nginx 配置用户认证有两种方式:
1.auth_basic 本机认证,由ngx_http_auth_basic_module模块实现。配置段: http, server, location, limit_except
2.auth_request,由ngx_http_auth_request_module模块实现。配置段:http, server, location
第一种方式:
yum -y install httpd-tools //安装 htpasswd 工具
htpasswd -c /etc/nginx/.passwd-www www //生成用户登录的认证文件
配置nginx本地认证:
server { listen 80; server_name www.imcati.com; auth_basic "User Authentication"; auth_basic_user_file /etc/nginx/.passwd-www;
location / { root /usr/share/nginx/html; index index.html; } }
加载配置: nginx -s reload
访问页面验证:
第二种方式:
编译Nginx时需要添加该模块: --with-http_auth_request_module
该模块可以将客户端输入的用户名、密码 username:password 通过 Base64 编码后写入 Request Headers 中,例如:www:wwww -> Authorization:Basic d2FuZzp3YW5n=
然后通过第三方程序解码后跟数据库中用户名、密码进行比较,Nginx服务器通过header的返回状态判断是否认证通过。
我们通过ldap进行第三方验证(具体参考ldap集成nginx配置),详情见:https://www.cnblogs.com/imcati/p/9372094.html
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:nginx 配置用户认证 - Python技术站