一、检查工具是否安装,如果未安装则使用yum安装
有以上输出表示已经安装,如果没有安装,使用如下命令安装:
1 |
yum -y install httpd-tools |
二、htpasswd选项参数
1 2 3 4 |
htpasswd [-cmdpsD] passwordfile username htpasswd -b[cmdpsD] passwordfile username password htpasswd -n[mdps] username htpasswd -nb[mdps] username password |
htpasswd命令选项参数说明
-c 创建一个加密文件
-n 不更新加密文件,只将htpasswd命令加密后的用户名密码显示在屏幕上
-m 默认htpassswd命令采用MD5算法对密码进行加密
-d htpassswd命令采用CRYPT算法对密码进行加密
-p htpassswd命令不对密码进行进行加密,即明文密码
-s htpassswd命令采用SHA算法对密码进行加密
-b htpassswd命令行中一并输入用户名和密码而不是根据提示输入密码
-D 删除指定的用户
三、创建用户和密码文件
1 |
htpasswd -bc /opt/app/nginx/.passwd test test@123 |
test:用户名, test@123:密码
文件内容如下:
test:$apr1$V3P/kJ/E$tgtEmhu7boXUWxSnxslf0.
四、修改nginx配置文件
- 如果想要对整个站点进行加密,将以下语句添加到server段:
auth_basic “Protected Elasticsearch”;
auth_basic_user_file /etc/nginx/.htpasswd;例如:
server {
listen 80;
client_max_body_size 48m;
auth_basic “Protected webssh”;
auth_basic_user_file /opt/app/nginx/.passwd;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;location / {
http_pass http://102.168.13.1;
}
}
- 如果只是对某一个请求,进行加密,则需要将上述语句添加到对应的location里面:
auth_basic “Protected Elasticsearch”;
auth_basic_user_file /etc/nginx/.htpasswd;例如:
server {
listen 80;
client_max_body_size 48m;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;location / {
auth_basic “Protected websh”;
auth_basic_user_file /opt/app/nginx/.passwd;http_pass http://102.168.13.1;
}
}
修改好配置首先进行检查配置文件的正确性:
1 |
nginx -t |
重新加载配置使配置生效:
1 |
nginx -s reload |
五、增加用户
1 |
htpasswd -b /opt/app/nginx/.passwd test1 test123 |
重新加载配置使修改生效:
1 |
nginx -s reload |
六、删除用户与密码
1 |
htpasswd -D /opt/app/nginx/.passwd test1 |
重新加载配置使修改生效:
1 |
nginx -s reload |
七、只显示用户名、密码,不修改密码文件
1 |
htpasswd -nb test test@123 |
八、修改密码
- 第一种方法
12htpasswd -D /opt/app/nginx/.passwd test1htpasswd -b /opt/app/nginx/.passwd test1 test123 - 第二种方法
1htpasswd -nb test test@123
test:$apr1$6QjLCTND$GSgAMl5.a0/cKcsqFV9RX.
将之前的删除或注释掉,并将上述产生的新密码添加到密码文件里面
1vim /opt/app/nginx/.passwd
1test:$apr1$6QjLCTND$GSgAMl5.a0/cKcsqFV9RX.
重新加载配置使修改生效:
1nginx -s reload
转载请注明:百分数 » nginx添加前置认证
责任声明: 本站一切资源仅用作交流学习,请勿用作商业或违法行为!如造成任何后果,本站概不负责!