防火墙添加白名单(firewalld方式)
·
在 firewalld 中为指定 IP 添加白名单
在 firewalld 中为特定 IP 地址添加白名单(允许该 IP 访问所有或特定服务/端口),可以使用以下几种方法:
方法1:为特定 IP 开放所有访问(不推荐生产环境)
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="IP地址" accept'
sudo firewall-cmd --reload
例如允许 192.168.1.100:
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.100" accept'
sudo firewall-cmd --reload
方法2:为特定 IP 开放特定端口
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="IP地址" port port="端口号" protocol="tcp/udp" accept'
sudo firewall-cmd --reload
例如允许 192.168.1.100 访问 TCP 端口 22 (SSH):
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.100" port port="22" protocol="tcp" accept'
sudo firewall-cmd --reload
方法3:为特定 IP 开放特定服务
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="IP地址" service name="服务名" accept'
sudo firewall-cmd --reload
例如允许 192.168.1.100 访问 HTTP 服务:
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.100" service name="http" accept'
sudo firewall-cmd --reload
方法4:为 IP 段添加白名单
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="IP段/掩码" accept'
sudo firewall-cmd --reload
例如允许 192.168.1.0/24 整个子网:
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" accept'
sudo firewall-cmd --reload
查看现有的富规则
sudo firewall-cmd --list-rich-rules
删除白名单规则
sudo firewall-cmd --permanent --remove-rich-rule='完整规则内容'
sudo firewall-cmd --reload
例如删除之前添加的 SSH 规则:
sudo firewall-cmd --permanent --remove-rich-rule='rule family="ipv4" source address="192.168.1.100" port port="22" protocol="tcp" accept'
sudo firewall-cmd --reload
注意事项
family="ipv4"也可以改为family="ipv6"用于 IPv6 地址- 永久规则必须使用
--permanent参数并执行--reload - 规则添加后可以使用
--list-rich-rules验证 - 生产环境中建议尽可能限制访问范围(特定服务/端口而非全部)
更多推荐
所有评论(0)