Nginx : Reverse Proxy avec SSL

Nginx : Reverse Proxy avec SSL

Table of Contents

Pré-requis

Nginx configuration

  • Editez le fichier de configuration du reverse proxy :
sudo vim /etc/nginx/sites-available/reverse-proxy.example.conf
  • En principe, après avoir suivi l'installation d'un reverse proxy avec Nginx, le server block suivant va être modifié :
server {
    listen 80;
    server_name blog.example.com;

    location / {
        proxy_pass http://172.0.1.10:80;
    }
}
server {
    listen 80;
    server_name blog.example.com;
    rewrite ^ https://blog.example.com permanent;
    }
  • Ajouter un nouveau server block pour permettre de faire du reverse proxy SSL comme suit :
server {
    listen 443 ssl;
    server_name blog.example.com;
    ssl_certificate /etc/letsencrypt/live/blog.example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/blog.example.com/privkey.pem;
    ssl_session_cache builtin:1000 shared:SSL:10m;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
    ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
    ssl_prefer_server_ciphers on;

    location / {
        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_set_header X-Forwarded-Proto $scheme;
        proxy_pass https://172.0.1.10:443;
        proxy_read_timeout 90;
    }
}

ssl_certificate et ssl_certificate_key contiendront le chemin d'accès au certificat et à la clef privée. Bien entendu, il faudra les transféré sur le serveur reverse proxy au bon endroit avec les bonnes permissions. Générer un certificat wildcard est fortement recommandé si vous souhaitez développer plusieurs sous-domaine. Cette partie ne sera pas détaillé dans ce tutorial ainsi que la gestion de son renouvelement.

proxy_pass : L'URL http / https vers le serveur hébergeant blog.example.com.

  • Vérifiez la configuration de Nginx avec :
sudo nginx -t
  • Aucune erreur ne doit être retournée :
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
  • Redémarrer le serveur reverse proxy :
sudo systemctl restart nginx

1 commentaire pour l’instant

LemonLDAP : Activer le HTTPS – slash-root.fr Publié le15h41 - 20 novembre 2021

[…] Nginx : Reverse Proxy avec SSL […]

Les commentaires sont fermés.

Les commentaires sont fermés.