1,iptables规则备份和恢复。
前面设定的防火墙规则只保存在内存中,并没有保存到某一个文件中。当系统启动后以前设定的规则就没有了,所以设定好规则后先保存一下。命令如下:
它会提示你防火墙规则保存在/etc/sysconfig/iptables文件内,这个文件就是iptables的配置文件。遇到备份防火墙规则的任务,我们只要复制一份这个文件的副本即可。
清除防火墙的规则可以使用命令iptables -F,最好的办法还是停止防火墙服务。
备份防火墙的命令:
先执行一下iptables脚本,使用iptables-save命令重定向到myipt.rule文件里。若想恢复这些规则,使用命令:
2,firewalld。
关闭iptables服务,打开firewalld服务。
firewalld有两个基础概念,分别是zone和service。每一个zone里面有不同的iptables规则,默认一共有9个zone。默认的zone是public。
block(限制):任何接收的网络连接都会被iPv4的icmp-host-prohibited信息 和ipv6的icmp6-adm-prohibited信息所拒绝
dmz(非军事区):用于你的非军事区的计算机,此区域内可公开访问,可以有限地进入你的内部网络,仅仅接收经过选择的连接。
drop(丢弃):任何接收的网络数据包都丢弃,没有任何回复,仅能有发送出处的网络连接。
external(外部):用于外部网络。特别是为路由器启用伪装功能的外部网。你不能信任来自网络的其它计算机,不能相信它们不会对你的计算机造成危害,只能接收经过选择的连接。
home(家庭):用于家庭网络。你可以基本上信任网络内的其他计算机不会危害你的计算机,仅仅接收经过选择的连接。
internal(内部):用于内部网络。你可以基本上信任网络内的其他计算机不会危害你的计算机,仅仅接收经过选择的连接。
public(公共):在公共区域内使用,不能相信来自网络的其它计算机不会对你的计算机造成危害,只能接收经过选择的连接。
trusted(信任):可以接收所有的网络连接。
work(工作):用于工作区。你可以基本上信任网络内的其他计算机不会危害你的计算机,仅仅接收经过选择的连接。
之所以有9种zone,是因为每一个zone里面都使用了不同的service,而service就是针对一个服务(端口)做的iptables规则。
这些service都是由一个个配置文件定义的,配置文件的模板在/usr/lib/firewalld/services/目录下,真正生效的配置文件在
/etc/firewalld/services目录下面。
查看一个zone下的service。
zone的配置文件。
在zone里增加service。这个方法只在内存中生效,并没有修改配置文件。
需求:假如服务器上配置了一个ftp服务,但端口并非默认的21,而是1121,并且在work zone下放行ftp。
# cp /usr/lib/firewalld/services/ftp.xml /etc/firewalld/services/
# vi /etc/firewalld/services/ftp.xml //把里面的21改为1121
# cp /usr/lib/firewalld/zones/work.xml /etc/firewalld/zones/# vi /etc/firewalld/zones/work.xml //增加一行ftp相关的配置
# firewall-cmd --reload //重新加载
success
# firewall-cmd --zone=work --list-services //验证
dhcpv6-client ipp-client ssh