CentOS iptables: No config file. 和恢复默认规则方法

偶尔会遇到启动 iptables 提示 iptables: No config file. 的情况,先上一份默认规则再说。

注意,网上的 iptables -P OUTPUT ACCEPT 这一句是不够看的。

Follow me…

# 重置正解
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -t raw -F
iptables -t raw -X
iptables -t security -F
iptables -t security -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

完成后执行 service iptables restart 时可能会遇到类似这个的提示

iptables: Setting chains to policy ACCEPT: filter nat mangl[FAILED]curity

原因是 CentOS 不支持 iptables 里的 security 的规则链

解决方法也很简单,进入 /etc/init.d,然后编辑 iptables

找到定义的 set_policy() 方法,再往下看找到 case "$i" in

在其下方添加如下代码保存即可

security)
$IPTABLES -t filter -P INPUT $policy \
&& $IPTABLES -t filter -P OUTPUT $policy \
&& $IPTABLES -t filter -P FORWARD $policy \
    || let ret+=1
;;

再次 service iptables restart,坚强绿 OK

你可能感兴趣的:(Linux)