linux7 iptables,CentOS 7 下使用iptables

系统升级到CentOS 7后总感觉iptables怪怪的,比如不管怎么保存重启后都被初始化一下,即便我最后发大绝招启动时候加命令:

首先iptables-save > /etc/iptables.rules保存当前状态。

然后再在/etc/rc.local中强制加上

iptables-restore/etc/iptables.rules

重启后虽然规则生效但仔细看规则还是一些被莫名添加的额外的内容,让人很是不爽。

仔细一google,发现问题之所在了。RedHat在7中更改了系统软件,不再使用iptables作为系统的防火墙,而是使用了FirewallD,但是为了兼容过去的命令也可以使用iptables来设置防护规则,但启动的时候自搞了一套。

解决方法也很简单。

首先,可以考虑follow官方的想法转用FirewallD 。其实查看一些官方文档也能用。

但是,个人觉得若没有显著的提升也可以继续使用原来的iptables.若打算继续使用iptables,可以继续做如下:

备份当前规则

iptalbes-save > iptables.rules

禁用FireWallD,安装&启用iptables-services

systemctl stop firewalld

systemctl mask firewalld#mask是比disable 更强劲的禁用

yuminstalliptables-services -y

systemctlenableiptables

为了让/etc/init.d/iptables save 这条命令生效,需要这么做

cp/usr/libexec/iptables/iptables.init/etc/init.d/iptables

/etc/init.d/iptablessave

而chkconfig iptables 命令会自动重定向到sytemctl enable iptables

这时候检查iptables发现规则被清空了

iptables -L -x -n

将备份的规则还原

iptables-restore iptables.rules

保存当前规则

/usr/libexec/iptables/iptables.init save

若使用minimize版本的安装,可能会出现提示

iptables: Saving firewall rules to /etc/sysconfig/iptables: /etc/init.d/iptables: line 274: restorecon: command not found

这是因为selinux没有安装的缘故,缺少一个组件。安装policycoreutils即可。

yuminstallpolicycoreutils -y

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值