Nginx配置访问控制

时间:2022-07-24
本文章向大家介绍Nginx配置访问控制,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

Nginx访问控制有两种方法

基于用户的basic认证访问控制 在nginx使用过程中,搭建了很多个站点,但是其中,有些站点不想被其他人访问,因此我们可以在nginx中为全部站点或某个站点设置访问权限认证,只有输入自己设置的正确的用户名与密码才可正常访问

基于IP的访问控制 deny IP/IP段 : 拒绝某个IP或IP段的客户端访问 allow IP/IP段 : 允许某个IP或IP段的客户端访问 规则从上往下执行,如匹配停止,不再往下匹配

基于用户的basic认证访问控制

安装htpasswd工具

yum install -y httpd-tools

使用htpasswd 生成用户认证文件

htpasswd -c /usr/local/nginx/passwd admin

编辑Nginx配置文件,为站点增加安全验证

location / {
auth_basic "END";
auth_basic_user_file /usr/local/nginx/passwd;
}

重启Nginx

nginx -s reload

基于IP的访问控制

有时候我们需要针对屏蔽某些恶意的IP访问我们的网站,或者限制仅仅某些白名单IP才能访问我们的网站。这时候我们就可以在nginx中通过简单的配置来达到目的

拒绝单个ip访问

# 格式: deny ip;
deny 126.115.63.52;

允许单个ip访问

# 格式: allow ip;
allow 126.115.63.54;

允许一个IP访问其他全部拒绝

allow 126.115.63.54;

deny all;

拒绝所有ip访问

deny all;

允许所有ip访问

allow all;

拒绝p段访问

# deny ip/mask
# 屏蔽172.12.62.0到172.45.62.255访问的命令 
deny 172.12.62.0/24;

允许ip段访问

# allow ip/mask
# 屏蔽172.102.0.0到172.102.255.255访问的命令 
allow 172.102.0.0/16;