下面是nginx配置IP白名单的详细步骤:
步骤一:编辑nginx.conf文件
在nginx.conf文件中添加下面的配置,建议放在http{}模块中。
http {
# 允许的IP列表
geo $allow_ips {
default 0;
# 将需要允许的IP添加到列表中,用空格隔开
192.168.1.2 127.0.0.1;
}
# 根据$allow_ips的值,选择是否允许访问
server {
listen 80;
server_name localhost;
# 设置访问限制
if ($allow_ips = 0) {
return 403;
}
location / {
# 进一步的访问限制
# ...
# 允许访问
# deny all;
}
}
}
这里将允许访问的IP地址添加到了$allow_ips
这个变量中,并在server {}
中使用if语句进行访问限制,如果访问者的IP地址不在$allow_ips列表中,则返回403 Forbidden。
步骤二:重启nginx服务器
sudo nginx -t # 检查nginx配置是否正确
sudo systemctl restart nginx # 重启nginx服务器
通过以上步骤,你就能够设置ip白名单了。
示例:
对于一个具体的实例,比如要允许IP地址为192.168.1.5
的机器访问,可将上面的配置修改为:
http {
# 允许的IP列表
geo $allow_ips {
default 0;
# 将需要允许的IP添加到列表中,用空格隔开
192.168.1.5;
}
# 根据$allow_ips的值,选择是否允许访问
server {
listen 80;
server_name localhost;
# 设置访问限制
if ($allow_ips = 0) {
return 403;
}
location / {
# 进一步的访问限制
# ...
# 允许访问
# deny all;
}
}
}
再比如要允许多个IP地址访问,可以在$allow_ips列表中添加多个IP地址,比如:
http {
# 允许的IP列表
geo $allow_ips {
default 0;
# 将需要允许的IP添加到列表中,用空格隔开
192.168.1.5 192.168.1.6 127.0.0.1;
}
# 根据$allow_ips的值,选择是否允许访问
server {
listen 80;
server_name localhost;
# 设置访问限制
if ($allow_ips = 0) {
return 403;
}
location / {
# 进一步的访问限制
# ...
# 允许访问
# deny all;
}
}
}
以上就是nginx配置IP白名单的详细步骤,希望可以帮到你。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:nginx配置IP白名单的详细步骤 - Python技术站