网络安全无处不在,使用Nginx为您的网站后台加把锁吧。
验证界面如:
1.Nginx兼容于Apache下htpasswd生成的密钥,不过Nginx下无此工具,可以使用crypt生成密码。
perl -e 'print crypt($ARGV[0], "pwdsalt")' password ;echo ""#password请更改为您的密码
用php生成sha密码,不建议:
$user = 'test';
$pass = 'test';
$sha1 = base64_encode(sha1($pass, true));
echo $user.':{SHA}'.$sha1;
使用openssl生成sha512crypt密码,建议使用。
echo 123456|openssl passwd -6 -in -
结果即加密后的密码,新建密钥配置谁的将用户密码以以下方式添加。
user:passwd
编辑Nginx配置文件
location ^~ /admin/ { #特定目录
location ~ .*\.(php|php5)?$ {
allow 192.168.1.16; #允许IP
deny all; #拒绝所有
fastcgi_pass unix:/tmp/php-cgi.sock;
fastcgi_index index.php;
include fcgi.conf;
}
auth_basic "Login";
auth_basic_user_file /passwdfile;
}
添加ip白名单跳过验证:
satisfy any;
allow 127.0.0.1;
deny all;
auth_basic "Login";
auth_basic_user_file /passwdfile;