nginx 实现基于basic用户认证机制
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nginx 实现基于basic用户认证机制相关的知识,希望对你有一定的参考价值。
实现基于用户的访问控制,使用basic机制进行用户认证
1,在配置文件添加如下几行配置
相关模块ngx_http_access_module
server {
listen 80;
root /nginx/html/;
location /admin/ {
auth_basic "admin Area";
auth_basic_user_file /etc/nginx/.ngxpasswd;
allow 192.168.68.7;
deny all;
}
}
"注意:在/nginx/html目录下必须要有admin这个目录"
指令解析:
auth_basic "Admin Area"; 设置提示语
auth_basic_user_file file; 指定用户名口令文件路径
allow 192.168.68.7; 设置允许访问的主机,也可是一个网段,如:192.168.68.0/24
deny all; 设置拒绝访问的主机或网段端all表示全部
2,创建存放用户名密码的文件
- 检查是否安装httpd-tools
rpm -ql httpd-tools
- 创建用户,密码文件
[[email protected] html]# htpasswd -cm /etc/nginx/.ngxpasswd ngx1
New password:
Re-type new password:
Adding password for user ngx1
"注意:再创建其他用户不能加c选项,c选项会重新创建该文件."
-文件内容
[[email protected] html]# cat /etc/nginx/.ngxpasswd
ngx1:$apr1$SCYEG5oY$VQm2hG/oSnkvS6jBgoe9j.
- 为了文件安全可以修改一下文件权限
chmod 600 /etc/nginx/.ngxpasswd
-rw------- 1 root root 43 Mar 22 11:32 .ngxpasswd
访问测试:
以上是关于nginx 实现基于basic用户认证机制的主要内容,如果未能解决你的问题,请参考以下文章
nginx认证模块ngx_http_auth_basic_module
Nginx实现基于用户的访问控制(Ngx_http_auth_basic_module模块)
Nginx实现基于用户的访问控制(Ngx_http_auth_basic_module模块)