用户认证
调整Nginx服务端配置,实现:
1.访问Web页面需要进行用户认证
2.用户名为:tom,密码为:123456
模板配置文件框架如下:
# vim /usr/local/nginx/conf/nginx.conf
全局配置(用户名,日志,进程)
http{
server{
listen 80;
server_name localhost;
root html;
}
server{
listen 80;
server_name www.xyz.com;
root www;
}
}
通过Nginx实现Web页面的认证,需要修改Nginx配置文件,在配置文件中添加auth语句实现用户认证。最后使用htpasswd命令创建用户及密码即可。
-------------------------------------------------
步骤
服务端proxy上操作:
步骤一:修改Nginx配置文件
1)修改/usr/local/nginx/conf/nginx.conf
vim /usr/local/nginx/conf/nginx.conf #先改配置文件,在server{},要在这个括号里面添加以下2行内容。
... ...
server {
listen 80; #端口
server_name localhost; #域名
auth_basic "Input Password:"; #认证提示符。指定跳出的对话框里的提示信息。
auth_basic_user_file "/usr/local/nginx/pass"; #认证密码文件。指定输入的用户名和密码,是从认证密码文件读取。
location / {
root html; #指定网站根路径
index index.html index.htm;
}
}
------------------------------------------------------------
2)生成密码文件,创建用户及密码。
使用htpasswd命令创建账户文件,需要确保系统中已经安装了httpd-tools。
# yum -y install httpd-tools #安装生成密码的软件。不能自己手写指定的用户名密码文件。
# htpasswd -c /usr/local/nginx/pass tom #创建密码文件。要和配置文件里面写的文件名一致。
New password:
Re-type new password:
Adding password for user tom
# htpasswd /usr/local/nginx/pass jerry #追加用户不使用-c选项。c代表create,重新创建新文件会覆盖原文件。
New password:
Re-type new password:
Adding password for user jerry
# cat /usr/local/nginx/pass #在文件里可以看到用户名和密码
tom:$apr1$vm9.QiPi$r1Iw/3icw1yj/1GJtutRF.
jerry:$apr1$27/vA8fU$lLyaJ3hwKRFfHLKapcqkr1
--------------------------------------------------------------
3)重启Nginx服务。
# nginx -s reload #重新加载配置文件。先确保nginx是启动状态,否则运行该命令会报错。
--------------------------------------------------------------
步骤二:客户端client测试
使用firefox火狐浏览器,注意在ssh远程的时候一定要加-X选项。或者直接使用真实主机的火狐也可以。
# firefox http://192.168.4.5 #输入密码后可以访问
原文:https://www.cnblogs.com/summer2/p/10787900.html