...
- Nouvelle vm en dmz 192.168.30.3
- user srvglpisrv
- installer nginx
- configuration nginx avec reverse proxy
...
GLPI reste installé sur ton serveur actuel SRV (
192.168.20.3
) dans le LAN
(Pas besoin de tout réinstaller). Tu ne Ne déplaces pas GLPI physiquement (ça évite de tout casser côté LDAP/BD/GLPI).
Tu ajoutes Ajoutes un reverse proxy dans ta DMZ (ex:
192.168.30.3
) qui publie GLPI vers l’extérieur.Aucune ouverture directe du LAN vers le WAN.
...
🛠️ Architecture réseau après mise en place :
scss[WAN] ↓
[OPNsense NAT/Firewall]
↓
[DMZ] ↳ Reverse Proxy (Nginx, IP : 192.168.30.3)
n ↳ redirige vers 192.168.20.3 (GLPI)
[LAN] ↳ Serveur GLPI (SRV - IP : 192.168.20.3)
...
🔥 Détail des étapes :
1. Installer un Reverse Proxy (Nginx) en DMZ
VM ou serveur avec IP 192.168.30.3.
Installer Nginx.
Code Block # 1. Mettre à jour le système sudo apt update sudo apt upgrade -y # 2. Installer Nginx sudo apt install nginx -y # 3. Vérifier que Nginx est bien installé et actif sudo systemctl status nginx # 4. Démarrer Nginx si besoin sudo systemctl start nginx # 5. Activer Nginx pour qu’il se lance automatiquement au démarrage sudo systemctl enable nginx
Configurer un proxy_pass vers ton GLPI :
générer un certificat
Annexe 1 : Crée un certificat avec ADCS (pour un serveur web)
Code Block # Aller dans le dossier de config Nginx cd /etc/nginx/sites-available/ # Créer un nouveau fichier pour GLPI sudo nano glpi.conf
Code Block # Redirection HTTP vers HTTPS server server { listen 80 default_server; server_name glpi.comptaplus.loc_; return 301 https://$host$request_uri; } # Reverse Proxy HTTPS server { listen 443 ssl default_server; server_name _ glpi.tondomainecomptaplus.frloc; ssl_certificate /etc/letsencryptnginx/livessl/glpi.tondomaine.fr/fullchain.cert.pem; ssl_certificate_key /etc/letsencryptnginx/livessl/glpi.tondomaine.fr/privkey.key.pem; ssl_protocols # Headers de sécuritéTLSv1.2 TLSv1.3; ssl_prefer_server_ciphers on; add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always; add_header X-Content-Type-Options "nosniff" always; add_header X-Frame-Options "DENY" always; add_header X-XSS-Protection "1; mode=block" always; location / { proxy_pass https://192.168.20.3/; # Adresse interne de ton serveur GLPI proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_ssl_verify off; # À activer si tu as un vrai certificat sur ton GLPI interneset_header X-Forwarded-Proto $scheme; } }
Code Block # Créer un lien symbolique dans sites-enabled sudo ln -s /etc/nginx/sites-available/glpi.conf /etc/nginx/sites-enabled/ # Tester la configuration Nginx pour être sûr qu’il n’y a pas d'erreurs sudo nginx -t # Recharger Nginx pour appliquer la nouvelle config sudo systemctl reload nginx
👉 Ici ton Ici Nginx en DMZ reçoit les requêtes HTTPS et renvoie proprement vers ton vers le serveur GLPI interne.
Sur OPNsense (pare-feu) :
2 1 règles NAT à faire :
Interface | Source | Port Destination | Redirection interne vers IP DMZ (Reverse Proxy) | Port interne | ||||
---|---|---|---|---|---|---|---|---|
WANW AN | Any80 (HTTP) | 192.168.30.3 (Reverse Proxy) | 80 | WAN | Any | 443 (HTTPS) | 192.168.30.3 (Reverse Proxy) | 443 |
3. SSL/TLS
Sur ton reverse proxy, génère un Let’s Encrypt certif SSL directement.
(Tu peux faire en HTTP-01 ou DNS-01 challenge suivant ton domaine.)
4. Bonus Sécurité :
Limite l’accès Nginx par IP si besoin.
Active Fail2ban sur le reverse proxy pour bloquer les attaques.
Ajoute un header de sécurité dans ton nginx.conf (
Strict-Transport-Security
, etc.).Mets à jour GLPI et tous les composants régulièrement.
📋 Résumé rapide :
...
Sécurité :
...