10.19 iptables规则备份和恢复


1. 保存iptables规则

命令:service iptables save会把规则保存到/etc/sysconfig/iptables文件中,如果没有保存,重启后iptables规则会被清空。

 2. 备份iptables规则(如果不想备份到默认文件中)备份到/tmp/ipt.txt文件中

  命令:iptables-save > /tmp/ipt.txt 

iptables配置后如何保存 iptables怎么保存_centos

 

3、恢复刚才备份的规则:

命令:iptables-restore < /tmp/ipt.txt 

iptables配置后如何保存 iptables怎么保存_配置文件_02

 

4.停用iptables防火墙,有时候我们需要清除防火墙的所有规则,使用命令iptables -F固然可以,但最好的办法还是停止防火墙服务,如下所示:

命令:service iptables stop  

iptables配置后如何保存 iptables怎么保存_xml_03

 

注:这样防火墙就失效了,但是一旦重新设定规则(哪怕只有一条),防火墙服务还是会自动开启。

10.20 firewalld的9个zone


1.firewalld是CentOS7里面的防火墙机器,在之前的操作中把firewalld服务给禁掉了,而是打开了iptables服务,现在再反过来关闭iptables服务,打开firewalld服务,操作如下:

打开firewalld 

systemctl disable iptables 

systemctl stop iptables 

systemctl enable firewalld 

systemctl start firewalld 

iptables配置后如何保存 iptables怎么保存_配置文件_04

 

打开firewalld以后,你可以执行一个iptables -nvL命令查看firewalld的默认规则,会发现这些规则要经netfilter的规则复杂。之前介绍的iptables相关命令在centos7也是可以继续使用的,不过在centos7里不用那么操作,Centos7里面有firewalld自己的命令。

 

1.1firewalld有两个基础概念,分别是zone和service,每一个zone里面有不同的iptables规则,默认一共有9个zone,而Centos 7默认的zone为public,

   查看系统所有的zone,命令:firewall-cmd --get-zones  (get前面是两个-)

iptables配置后如何保存 iptables怎么保存_iptables配置后如何保存_05

 

1.2 查看默认zone: 

命令:firewall-cmd –get-default-zone 

iptables配置后如何保存 iptables怎么保存_xml_06

 

1.3 9个zone的介绍如下:

iptables配置后如何保存 iptables怎么保存_运维_07

 

 

10.21 firewalld关于zone的操作


firewall关于zone的操作 

1、设定默认zone: 

firewall-cmd –set-default-zone=work 

iptables配置后如何保存 iptables怎么保存_运维_08

 

2、 查指定网卡有没有zone: 

firewall-cmd –get-zone-of-interface=eth0

iptables配置后如何保存 iptables怎么保存_运维_09

 

3、给指定网卡设置zone: 

firewall-cmd –zone=public –add-interface=eth0

iptables配置后如何保存 iptables怎么保存_iptables配置后如何保存_10

 

4、 针对网卡更改zone: 

firewall-cmd –zone=block –change-interface=eno16777736 

iptables配置后如何保存 iptables怎么保存_centos_11

 

5、 针对网卡删除zone : 

firewall-cmd –zone=block –remove-interface=eno16777736 

iptables配置后如何保存 iptables怎么保存_centos_12

 

6、 查看系统所有网卡所在的zone: 

firewall-cmd –get-active-zones 

iptables配置后如何保存 iptables怎么保存_配置文件_13

 

 

10.22 firewalld关于service的操作


介绍另一个概念service,之所以有9种zone,是因为每个zone里面都使用了不同的service,而service就是针对一个服务(端口)做的iptables规则。

1、查看所有的servies: 

firewall-cmd –get-services 

iptables配置后如何保存 iptables怎么保存_运维_14

 

这些service都是由一个个配置文件定义的,配置文件的模板在/usr/lib/firewalld/services/目录下,真正生效的配置在/etc/firewalld/services目录下面(默认为空)。

2、查看当前zone下有哪些service: (每个zone里面都有不同的service)

firewall-cmd –list-services 

firewall-cmd --zone=public --list-service   //查看指定zone下有哪些service

iptables配置后如何保存 iptables怎么保存_centos_15

 

3、一个zone下面有某个service,意味着这个service是被信任的,比如,当前zone下面有个ssh,那么ssh服务(也就是22)端口是放行的,我们可以给一个zone添加一个service

把http增加到public zone下面: 

firewall-cmd –zone=public –add-service=http  //当前zone下添加http

firewall-cmd –zone=public –remove-service=http  //当前zone下删除http

iptables配置后如何保存 iptables怎么保存_iptables配置后如何保存_16

 

仅在内存中生效,如果想要永久生效,需要更改配置文件,以下

4、对于每个zone来说,都有自己的配置文件,你可以查看目录/usr/lib/firewalld/zones/下面对应的文件,这些就是zone的配置文件: 

ls /usr/lib/firewalld/zones/ 

iptables配置后如何保存 iptables怎么保存_运维_17

 

5、前面已经试过一种方法可以在一个zone里面增加一个service,但这种方法仅仅在内存中生效,并没有修改配置文件,如果想要修改配置文件,需要增加一个选项

更改配置文件,之后会在/etc/firewalld/zones目录下面生成配置文件(永久生效): 

firewall-cmd –zone=public –add-service=http –permanent

ls /etc/firewalld/zones    //查看zone的配置文件会生成public.xml  public.xml.old

iptables配置后如何保存 iptables怎么保存_配置文件_18

 

备注:一旦更改了某个zone的配置文件,则会在/etc/firewalld/zones目录下面生成对应zone的配置文件(.xml后缀的文件),其实这个目录下面的配置文件才是真正的配置文件,上面所介绍的目录,可以说是所有zone的模板配置文件。

6.实验举例:

假设服务器上配置了一个ftp服务,但端口并非默认的21,而是要自定义端口1121,并且需要在work zone下面放行ftp。 

# cp /usr/lib/firewalld/services/ftp.xml  /etc/firewalld/services 拷贝
 # vi /etc/firewalld/services/ftp.xml 把21改为1121 (参考图1)
 # cp /usr/lib/firewalld/zones/work.xml /etc/firewalld/zones/
# vi /etc/firewalld/zones/work.xml增加一行(参考图2)
  <service name="ftp"/> 
# firewall-cmd --reload        //重新加载 
 success
 # firewall-cmd --zone=work --list-services   //验证work zone里面的services是否有ftp ssh dhcpv6-client ftp

iptables配置后如何保存 iptables怎么保存_运维_19

 

图一

iptables配置后如何保存 iptables怎么保存_运维_20

 

图二

iptables配置后如何保存 iptables怎么保存_xml_21

 

 



转载于:https://blog.51cto.com/404006045/2115055