.htpasswd ファイルを使用して、Nginx で auth_basic を正常にセットアップしました。ただし、誰かがファイル名を推測した場合でも、ログインに成功していなくても、URL を提供することで wget または単にブラウザーを使用してファイルをダウンロードできます。
ログインせずに誰かがファイルをダウンロードできないようにするにはどうすればよいですか?
nginx のデフォルト ssl 構成ファイルは次のとおりです。
root /var/www/html;
index index.html index.htm index.php;
ssl on;
ssl_certificate /etc/nginx/ssl/server.crt;
ssl_certificate_key /etc/nginx/ssl/server.key;
ssl_session_timeout 5m;
ssl_protocols SSLv3 TLSv1;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:!LOW:+SSLv3:+EXP;
ssl_prefer_server_ciphers on;
# /dir/dir w/basic auth
location ~ ^/(?P<mydir>.*)/$ {
auth_basic "Restricted";
auth_basic_user_file $document_root/$mydir/.htpasswd;
autoindex on;
allow all;
}
# prevent listing of .htpasswd
location ~ /\. {
deny all;
}