Nginx配置白名单

在 Nginx 中配置 IP 白名单是一种常见的安全措施,允许只有特定的 IP 地址访问某些资源或整个站点。以下是配置白名单的基本步骤:

1. 配置在 server 块中

如果你希望对整个服务器(域名)进行 IP 白名单配置,可以在 server 块中进行配置:

 

server {
    listen 80;
    server_name yourdomain.com;

    # 设置允许访问的 IP 白名单
    allow 192.168.1.1;  # 允许单个 IP 访问
    allow 192.168.1.0/24;  # 允许整个 IP 段访问
    deny all;  # 拒绝所有其他 IP 访问

    location / {
        # 你的其他配置
    }
}
 

2. 配置在 location 块中

如果你只希望限制某个路径的访问,可以在 location 块中进行配置:

server {
    listen 80;
    server_name yourdomain.com;

    location /admin {
        # 设置允许访问的 IP 白名单
        allow 192.168.1.1;  # 允许单个 IP 访问
        allow 192.168.1.0/24;  # 允许整个 IP 段访问
        deny all;  # 拒绝所有其他 IP 访问

        # 你的其他配置
    }

    location / {
        # 不受限制的访问
    }
}

3. 配置多个白名单 IP

你可以配置多个 allow 指令来允许多个 IP 地址访问:

server {
    listen 80;
    server_name yourdomain.com;

    location / {
        allow 192.168.1.1;
        allow 203.0.113.0/24;
        allow 10.0.0.0/8;
        deny all;

        # 你的其他配置
    }
}

4. 特定的子路径限制

你还可以对某些子路径设置不同的白名单策略。例如,限制 /admin 路径的访问,但开放其他路径:

server {
    listen 80;
    server_name yourdomain.com;

    location /admin {
        allow 192.168.1.100;
        deny all;

        # 其他 admin 路径配置
    }

    location / {
        # 其他路径不受 IP 限制
    }
}

5. 测试配置

完成配置后,使用以下命令测试你的 Nginx 配置是否正确:

nginx -t

如果没有错误,重新加载 Nginx 以应用配置:

 

nginx -s reload

通过这些配置,你可以有效控制哪些 IP 地址可以访问你的站点或特定的路径。

  • 8
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值