我尝试按照此链接使用命令禁用并删除 iptables 防火墙:
# service iptables save
# service iptables stop
# chkconfig iptables off
# iptables -F
# iptables -X
# iptables -t nat -F
# iptables -t nat -X
# iptables -t mangle -F
# iptables -t mangle -X
# iptables -P INPUT ACCEPT
# iptables -P OUTPUT ACCEPT
它似乎暂时起作用,然后防火墙甚至无需重新启动就会自行再次启用。
知道我做错了什么吗?
答案1
可能还有其他后台进程会自动重新生成 iptables 规则集。
你必须明白 iptables 只是一个操作netfilter
表的用户空间程序在内核中。 它不能除非重新编译内核,否则无法“关闭”。该命令service iptables stop
实际上只是针对内核表发出“刷新”指令。
如果任何其他进程调用该iptables
程序(或直接通过操作内核中的 netfilter 表libnetfilter
),那么规则集将被重新填充。
因此,如果您想防止 netfilter 规则集被重新生成,您必须审核您正在运行的进程。fail2ban
例如,自动生成 netfilter 规则。