Accès restreint Nginx

Voir : how-to-set-up-http-authentication-with-nginx-on-ubuntu-12-10

sudo apt-get install apache2-utils
$ sudo htpasswd -c /etc/nginx/.htpasswd exampleuser New password: Re-type new password: Adding password for user exampleuser
chmod 640 /etc/nginx/.htpasswd exampleuser chown www-data:www-data /etc/nginx/.htpasswd

La structure du fichier htpasswd est sous la forme suivante :

login:Hash_mdp

/etc/nginx/sites-available/website_nginx.conf

auth_basic "Restricted";
auth_basic_user_file /etc/nginx/.htpasswd;

Exemple :

/etc/nginx/sites-available/website_nginx.conf

server { listen portnumber; server_name ip_address; location / { root /var/www/mywebsite.com; index index.html index.htm; auth_basic "Restricted"; #For Basic Auth auth_basic_user_file /etc/nginx/.htpasswd; #For Basic Auth } }

On vérifie la configuration de Nginx.

nginx -t

Si ok, on la recharge

service nginx reload

Appliquez cette configuration que pour les sites en HTTPS seulement. Sinon, le mot de passe sera envoyé en clair !