一、为什么需要配置防火墙端口白名单
服务器暴露在公网环境中会面临各种安全威胁,通过宝塔防火墙的端口白名单功能可以实现:
- 仅允许可信IP访问特定服务端口
- 阻止恶意扫描和暴力破解尝试
- 降低DDoS攻击风险
- 符合企业级安全合规要求
二、开启宝塔防火墙基础防护
1. 登录宝塔面板,在左侧导航栏选择安全
> 防火墙
2. 点击右上角开启防火墙
按钮
3. 建议开启以下基础防护选项:
- 防御CC攻击(推荐)
- 禁止ping(可选)
- 启用HTTP防御(必选)
三、配置端口白名单详细步骤
3.1 添加单个端口白名单
1. 在防火墙页面选择端口规则
选项卡
2. 点击添加端口规则
按钮
3. 填写规则信息示例:
端口:3306
协议:TCP
策略:允许
备注:MySQL数据库端口
IP:192.168.1.100/32
3.2 批量导入IP白名单
对于需要批量添加的IP地址:
在SSH中执行(需root权限)
iptables -A INPUT -s 203.0.113.0/24 -j ACCEPT
iptables-save > /etc/sysconfig/iptables
systemctl restart firewalld
四、高级配置技巧
4.1 动态DDNS支持
对于动态IP用户,可通过API自动更新规则:
!/usr/bin/env python
import requests
BT_PANEL = "https://面板地址:端口"
API_KEY = "你的API密钥"
new_ip = requests.get('https://api.ipify.org').text
requests.post(f"{BT_PANEL}/firewall?action=AddRule",
data={"port":"22", "ip":f"{new_ip}/32"})
4.2 端口速率限制
防止暴力破解的关键配置:
在Nginx配置中添加
limit_req_zone $binary_remote_addr zone=protect:10m rate=30r/m;
location /admin {
limit_req zone=protect burst=5;
}
五、常见问题排查
- Q:添加白名单后仍无法访问?
A:检查云服务商的安全组规则是否同步放行 - Q:如何查看实时拦截日志?
A:在防火墙日志
选项卡可查看详细记录
通过合理配置宝塔防火墙的端口白名单,可以有效平衡安全性与可用性。建议每月审查一次规则列表,及时清理不再使用的IP授权。
评论