Optimisation du caching NGINX
+surveillance, +détection, +filtrage
| ansible | ||
| asn-mitigation | ||
| diagram | ||
| docker | ||
| docs | ||
| fail2ban | ||
| logrotate | ||
| nftables | ||
| nginx | ||
| .gitignore | ||
| 00-ARCHITECTURE.md | ||
| 01-SECURITY-PHILOSOPHY.md | ||
| LICENSE | ||
| Makefile | ||
| README.md | ||
ERPLibre – Secure Reference Deployment
Sécurité numérique responsable
Ce dépôt constitue un modèle de référence applicable à toute instance ERPLibre (Odoo) conteneurisée, exposée publiquement via Nginx sur l’hôte, avec PostgreSQL conteneurisé.
Exemple d’implémentation (illustratif) : https://www.rencontres-linux.quebec
Architecture cible
Internet
↓
nftables (policy DROP + mitigation ASN TTL légère)
↓
Nginx (hôte)
↓
Réseau Docker dédié (erplibre_net)
↓
Odoo (conteneur, pas de port publié)
↓
PostgreSQL (conteneur, pas de port publié)
Principes
- Surface minimale : seuls ports 80/443 exposés.
- Segmentation Docker : réseau dédié par stack.
- Pare-feu moderne : nftables (DROP par défaut), règles explicites.
- Mitigation proportionnée : Fail2ban (24h) + ASN TTL (7 jours).
- WAF léger : ModSecurity + OWASP CRS (niveau 1), approche prudente.
Démarrage rapide
-
Créer le réseau Docker dédié :
docker network create erplibre_net -
Déployer la stack (exemple) :
cd docker docker compose up -d -
Installer / activer Nginx + config du vhost :
nginx/erplibre.conf(exemple)- Certificat TLS via Certbot (hors du périmètre de ce dépôt)
-
Activer le pare-feu nftables :
nftables/edge.nft
-
Installer Fail2ban :
fail2ban/jail.local(+ filtres au besoin)
-
Activer la mitigation ASN TTL :
asn-mitigation/*(script + systemd timer)
Voir : docs/DEPLOYMENT-STEPS.md
Contenu du dépôt
docker/: stack Docker (Odoo + PostgreSQL) sur réseau dédiénginx/: vhost Nginx durci (exemple)nftables/: pare-feu minimal (DROP + ASN TTL)fail2ban/: jails de baseasn-mitigation/: script + unit/timer systemdlogrotate/: rotation des logs Nginxansible/: playbook minimal (mode A) pour appliquer ces artefactsdiagram/: schéma (SVG)
Licence
MIT (voir LICENSE).