人生就是由众多的细节组成的
正因为是个细节,所以常被人所淡忘

Nginx access模块限制IP访问 从X-Forwarded-For获取真实IP

在Nginx中限制IP访问是一种常用的安全措施,可以帮助保护网站免受未授权访问或攻击。通过在Nginx配置文件中使用allow和deny指令,可以实现对特定IP地址的访问限制。

Access 模块

Module ngx_http_access_module允许限制某些IP地址的客户端访问。也可以通过密码来限制访问。

access 模块提供两个指令:
allow:配置允许访问的IP
deny:配置禁止访问的IP

仅允许特定IP访问

在相应的server或location块中,使用allow和deny指令来控制哪些IP地址被允许或拒绝访问。

location / {
    allow 192.168.1.100; # 允许这个IP访问
    deny all; # 拒绝其他所有IP的访问
}

这个配置允许IP地址为192.168.1.100的用户访问,而拒绝所有其他IP的访问请求。

拒绝特定IP访问

这个配置拒绝IP地址为192.168.1.100的用户访问/admin路径,但允许所有其他IP的访问。

location /admin {
    deny 192.168.1.100; # 拒绝这个IP访问
    allow all; # 允许其他所有IP的访问
}

配置示例

server {
    listen 80;

    location / {
        allow 192.168.1.0/24;   # 允许192.168.1.0/24网段的IP访问
        deny all;               # 拒绝其他IP访问
    }

    location /admin {
        allow 10.0.0.0/24;      # 允许10.0.0.0/24网段的IP访问
        allow 192.168.1.100;     # 允许特定IP 192.168.1.100 访问
        deny all;               # 拒绝其他IP访问
    }
}

在以上示例中,allow和deny指令用于控制访问的客户端IP。可以根据需要设置不同的访问控制规则,允许或拒绝特定IP地址或IP地址范围的访问。
另外,还可以使用geo模块和map指令结合实现更复杂的访问控制逻辑。通过定义变量和条件语句,可以更灵活地控制访问权限。
总的来说,Nginx提供了多种方式来配置高级访问控制,可以根据具体需求选择合适的方式进行配置。

Nginx Module

Module ngx_http_realip_module 该模块用于将客户端真实地址改成header中的ip。

默认情况下不构建此模块,编译时需要添加参数 –with-http_realip_module。
set_real_ip_from 指定可信的地址来源(如前置负载均衡器的ip)
real_ip_header 指定使用哪个header替换真实ip
real_ip_recursive 递归搜索。off,则替换为header中最后一个地址;on,则替换为header中最后一个非受信任地址。

location  / {
    #设置从X-Forwarded-For获取真实IP
    set_real_ip_from 100.123.0.0/16;
    real_ip_header  X-Forwarded-For;
    real_ip_recursive on;

    ## 允许或拒绝IP访问
    allow 10.0.0.0/8;       #允许一个网段
    allow 192.168.1.100;    #允许一个IP
    deny all;               #兜底:拒绝所有
}

注意事项

修改配置后,需要重载Nginx以应用新的设置。

确保正确配置了IP地址,避免意外阻止合法访问或允许未经授权的访问。
对于使用动态IP地址的用户,这种方法可能不太适用,因为他们的IP地址可能会变化。
除了基于IP的访问控制,还可以考虑其他安全措施,如密码保护、SSL/TLS加密等,以进一步增强网站的安全性。
通过在Nginx中配置IP访问限制,可以有效地控制谁可以访问网站的哪些部分,这是提高网站安全的一种简单而有效的方法。

赞(3) 打赏
未经允许不得转载:毛桃博客 » Nginx access模块限制IP访问

评论 抢沙发

评论前必须登录!

 

实践是学习的最佳途径

支持快讯、专题、百度收录推送、人机验证、多级分类筛选器,适用于垂直站点、科技博客、个人站,扁平化设计、简洁白色、超多功能配置、会员中心、直达链接、文章图片弹窗、自动缩略图等...

了解更多看平潭

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫

微信扫一扫

登录

找回密码

注册