一、安装iptables

Centos7系统默认是使用firewall作为防火墙,为了更好兼容老的系统配置,将防火墙设置为iptables(用原来centos6.5的配置即可直接用)。

查看firewall防火墙状态:systemctl status firewalld

centos 防火墙 docker 出站规则 centos防火墙iptables配置_iptables

  1. 关闭防火墙
关闭firewall防火墙: systemctl stop firewalld

centos 防火墙 docker 出站规则 centos防火墙iptables配置_centos_02


3. 关闭防火墙开机自启动

关闭开机自启动: systemctl disable firewalld

centos 防火墙 docker 出站规则 centos防火墙iptables配置_防火墙_03


兄弟们我这里重启系统(reboot)测了一下果真没问题,你们就不用重启了!

centos 防火墙 docker 出站规则 centos防火墙iptables配置_centos_04


4. 安装iptables

在线安装命令: yum install iptables-services

centos 防火墙 docker 出站规则 centos防火墙iptables配置_centos_05


如下图所示,安装完成!

centos 防火墙 docker 出站规则 centos防火墙iptables配置_iptables_06


5. 启动iptabls

启动命令: systemctl start iptables

centos 防火墙 docker 出站规则 centos防火墙iptables配置_centos_07


6. 设置成开机自启动

启动命令: systemctl enable iptables.service

centos 防火墙 docker 出站规则 centos防火墙iptables配置_iptables_08

二、防火墙设置
1、设置防火墙拦截端口
拦截8080端口访问,执行完后虽然命令生效但并未保存到iptables种,还需要执行: service iptables save
这样即使关机,还是重启命令都生效了。

[root@host ~]# iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 8080 -j ACCEPT

centos 防火墙 docker 出站规则 centos防火墙iptables配置_防火墙_09


注意:这里用的事iptables -I INPUT而不是iptables -A INPUT,-I的话默认插入第一条,当然也可以指定插入到第几条,在INPUT后面填数字即可如图2,至于其它iptables命令网上一大把,自己找即可。

centos 防火墙 docker 出站规则 centos防火墙iptables配置_iptables_10


centos 防火墙 docker 出站规则 centos防火墙iptables配置_linux_11


2、防火墙iptables种命令移除,删除相应设置

输入命令INPUT后数字即是删除行数,如图2,已经将9090端口删除。

[root@host ~]# iptables -D INPUT 3

centos 防火墙 docker 出站规则 centos防火墙iptables配置_禁用端口_12

centos 防火墙 docker 出站规则 centos防火墙iptables配置_linux_13


三、总结

在学习了防火墙设置后,对linux系统使用更加完善,我们可以通过我上述内容任意对防火墙的设置,甚至开发成管理功能,来对防火墙进行管理,策略的下发,删除,修改等等,但操作防火墙iptables同时一定要足够严谨,我相信将所有非使用端口都禁用掉,就能阻止大多数黑客的嗅探以及网络攻击,虽然对linux不够精通,希望自己写的内容能帮助别人,我更多的是提供一个思路,非人云亦云。

四、注意事项
1、iptables命令没有生效,请查看命令是否在以下命令前面,如果不加下面两行命令,那么设置的拦截有些非拦截情况将不生效。

-A INPUT -j REJECT --reject-with icmp-host-prohibited

centos 防火墙 docker 出站规则 centos防火墙iptables配置_禁用端口_14