iptables 拦截除了 www.baidu.com 所有 80、443 端口不起作用解决方案
可能是因为 iptables 规则设置不正确或者有其他防火墙软件影响了 iptables 的工作。
以下是一些可能的问题及解决方法:
- iptables 规则设置不正确
检查一下 iptables 规则是否正确,是否有其他规则覆盖了该规则。可以使用以下命令查看 iptables 规则:
iiptables -L -n
如果规则设置正确,应该能看到类似如下的结果:
Chain INPUT (policy ACCEPT)
num target prot opt source destination
1 ACCEPT tcp -- 0.0.0.0/0 192.168.1.1 tcp dpt:22
2 DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
3 DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:443
其中,第 2、3 条规则将 80 和 443 端口的流量拦截掉。
- 其他防火墙软件影响 iptables
如果系统中还安装了其他防火墙软件,例如 firewalld、ufw 等,可能会影响 iptables 的工作。可以使用以下命令检查系统中是否有其他防火墙软件:
systemctl status firewalld
如果 firewalld 正在运行,则可以使用以下命令关闭该服务:
systemctl stop firewalld
然后再次检查 iptables 规则是否生效。如果还是不行,可以尝试重启 iptables 服务:
systemctl restart iptables
如果还是不行,可以考虑修改 iptables 的配置文件 /etc/sysconfig/iptables,手动添加规则。例如:
-A INPUT -p tcp --dport 80 -j DROP
-A INPUT -p tcp --dport 443 -j DROP
然后重启 iptables 服务:
systemctl restart iptables
这样就可以拦截除了 www.baidu.com 之外的所有 80 和 443 端口流量了。
原文地址: https://www.cveoy.top/t/topic/nT94 著作权归作者所有。请勿转载和采集!