====== Nginx ======
===== Activer HSTS =====
Insérer dans /etc/nginx/nginx.conf : add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
===== Configuration HTTPS =====
Ciphers utilisés par défauts par Nginx :
Utilisation uniquement des ciphers de haut niveau (avec clés supérieures à 128bits) avec exclusion du MD5 et des ciphers n'apportant pas d'authentification.
ssl_ciphers HIGH:!aNULL:!MD5;
Détail des ciphers OpenSSL : [[https://www.openssl.org/docs/manmaster/man1/openssl-ciphers.html]]
===== HTTP Basic Authentication =====
Doc pour mettre en place la basic authentication : [[https://docs.nginx.com/nginx/admin-guide/security-controls/configuring-http-basic-authentication/]]
Ne pas mettre directement le fichier .htpasswd à la racine du /home/user mais dans un sous-dossier (ex : /home/user/etc/.htpasswd)
Penser à faire un systemctl reload nginx après ajout ou modification du fichier .htpasswd
===== Configuration reverse proxy docker =====
server {
listen 80;
server_name example.org;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl http2;
server_name example.org;
ssl_certificate /etc/ssl/example.org.pem;
ssl_certificate_key /etc/ssl/example.org.pem;
location / {
proxy_pass http://127.0.0.1:8080;
}
}