使用Nginx的auth功能模块实现网站后台二次登入认证增加安全措施

温馨提示:文章已超过1021天没有更新,可能存在链接失效,相关教程仅供参考

PHP开源网站程序使用的人多了,后台地址自然就被大家所知,就会导致有人来破解登入从而导致网站数据异常丢失,那么除了设置复杂点的密码还有其他安全措施吗?有的我们可以使用网站服务器运行的web环境自带的功能来增加安全措施,比如站长测试网站用的web环境是Nginx。我们可以使用Nginx的auth验证功能模块来实现后台地址二次登入认证增加安全措施。设置完测试网站后台二次认证后,记录Centos7系统下Nginx如何配置auth验证功能模块,同时也给需要同学提供一丢丢帮助。

设置密码数据库

1、安装Apache工具htpasswd

$ yum install -y httpd

2、使用htpasswd生成账号密码

/etc/nginx/conf.d/password为密码库存放位置,test为用户名

$ htpasswd -c /etc/nginx/conf.d/password test

输入命令回车后要求输入两次密码

Nginx配置auth认证

在nginx站长配置文件中添加如下配置信息

location ~ /admin/login.php
{
    auth_basic “Myauth”;
    #这里写前面脚本返回的文件路径;
    auth_basic_user_file /etc/nginx/conf.d/password;
}

“Myauth”为提示信息,可以自行修改。

auth_basic_user_file配置段中填写前面创建的密码库文件存放位置例如/etc/nginx/conf.d/password

配置完成后访问后台地址如果不输入用户名和密码点击取消的话会提示401错误,输入正确的才会显示正常页面

image.png

配置完认证之后访问后台地址发现php文件没有正常解析,直接提示下载,如果要使其能够解析php需要将上面的配置改为如下

location ~ /admin/login.php
    location ~ \.php$ {
        root           html;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;
    }
    auth_basic “Myauth”;
    auth_basic_user_file /etc/nginx/conf.d/password;
}

以上就是如何使用Nginx的auth验证功能模块来实现后台地址二次登入认证增加安全措施的设置办法

© 除非注明,否则均为阿豪运维笔记原创文章,转载或复制请以超链接形式并注明出处

取消
微信二维码
微信二维码
支付宝二维码