应通过宝塔防火墙白名单、Nginx的allow/deny指令或Apache的.htaccess Require ip规则,仅允许192.168.0.0/16、10.0.0.0/8、172.16.0.0/12内网IP访问,再分别重载服务并验证局域网正常、公网403、本地200。

如果您在宝塔面板中部署了Web服务,但希望仅允许内网私有IP地址访问(如192.168.x.x、10.x.x.x、172.16.x.x–172.31.x.x),则需通过防火墙规则与Nginx/Apache访问控制协同配置。以下是实现该策略的具体操作步骤:
一、启用并配置宝塔内置防火墙
宝塔面板自带防火墙模块可对入站连接进行IP段过滤,优先拦截非内网请求,降低后端服务压力。
1、登录宝塔面板,在左侧菜单栏点击安全,进入防火墙管理界面。
2、确认防火墙状态为已启动;若未启动,点击右上角“启动”按钮启用。
3、在“IP黑名单”区域下方,点击添加白名单按钮。
4、在弹出框中输入内网私有IP段,每行一个,例如:
192.168.0.0/16
10.0.0.0/8
172.16.0.0/12
5、勾选仅允许白名单IP访问选项,点击提交保存。
二、在网站配置中设置Nginx访问限制
Nginx层面的allow/deny指令可对特定站点实施更精细的IP控制,适用于多站点共存且需差异化策略的场景。
1、在宝塔面板左侧点击网站,找到目标站点,点击右侧设置按钮。
2、切换至配置文件选项卡,在server块内、location /块上方插入以下配置:
2、添加如下语句:
allow 192.168.0.0/16;
allow 10.0.0.0/8;
allow 172.16.0.0/12;
deny all;
3、点击右上角保存,再点击重载Nginx使配置生效。
三、通过Apache .htaccess实现访问控制(仅限Apache环境)
若站点使用Apache作为Web服务器,可通过站点根目录下的.htaccess文件定义IP访问范围,无需修改主配置。
1、进入目标站点根目录(如/www/wwwroot/example.com),检查是否存在.htaccess文件;若无,新建一个。
2、在文件中写入以下内容:
<RequireAll>
Require ip 192.168
Require ip 10
Require ip 172.16
</RequireAll>
3、返回宝塔面板,在网站设置中切换至Apache配置选项卡,确认启用.htaccess已勾选。
4、点击重载Apache使规则立即生效。
四、验证内网访问策略是否生效
策略配置完成后,需从不同网络环境发起访问测试,确认拒绝逻辑正确执行,避免误封或放行。
1、从局域网内任一设备(如192.168.1.100)访问该站点URL,页面应正常加载。
2、从公网IP(如手机4G网络)访问同一URL,应返回403 Forbidden或连接被拒绝提示。
3、登录服务器终端,执行命令:curl -I http://localhost,确认本地回环访问返回200 OK。










