10.19 iptables规则备份和恢复
10.20 firewalld的9个zone
10.21 firewalld关于zone的操作
10.22 firewalld关于service的操作
10.19iptables的保存和备份
iptbales的规则都是保存在/etc/sysconfig/iptables
里面
service iptables save:保存规则到配置文件中
iptables-save >文件名:把当前规则备份到指定文件里
1 | [root@kun0769 ~]# iptables-save > /tmp/backup.txt |
iptables-restore < 文件名:把文件中规则还原出来
1 | [root@kun0769 ~]# iptables-restore < /tmp/backup.txt |
当然也可以直接cp配置文件来备份1
[root@kun0769 ~]# cp /etc/sysconfig/iptables /tmp/iptables.bak
10.20/10.21/10.22 firewalld
firewalld是CentOS7上默认使用的防火墙工具,其中firewalld中有9个zone,默认使用public
我们先把iptbales服务停止并启动firewalld服务1
2
3
4[root@kun0769 ~]# systemctl disable iptables ##禁止iptables开机启动
[root@kun0769 ~]# systemctl stop iptables ##停止iptables服务
[root@kun0769 ~]# systemctl enable firewalld ##允许firewalld开机启动
[root@kun0769 ~]# systemctl start firewalld ##开启firewalld服务
firewalld中的9个zone,zone相当于是规则的集合 每个zone都对应不同的规则 比喻开发某些端口或者禁掉某些端口等
firewall-cmd –get-zones:查看9个zone
1 | [root@kun0769 ~]# firewall-cmd --get-zones |
firewall-cmd –get-default-zone:查看默认的zone
1 | [root@kun0769 ~]# firewall-cmd --get-default-zone ##系统默认zone是public |
firewall-cmd –set-default-znne:更改默认的zone
1 | [root@kun0769 ~]# firewall-cmd --set-default-zone=home ##把默认的zone改为home |
firewall-cmd –get-zone-of-interface=网卡名:查看指定网卡的zone
1 | [root@kun0769 ~]# firewall-cmd --get-zone-of-interface=ens33 ##ens33没有任何的zone |
firewall-cmd –zone=zone名 –add-interface=网卡名:为指定的网卡设置zone
1 | [root@kun0769 ~]# firewall-cmd --zone=internal --add-interface=ens33 ##指定ens33的zone为internal |
firewall-cmd –zone=zone名 –change-interface=网卡名:更改指定的网卡的zone
1 | [root@kun0769 ~]# firewall-cmd --zone=work --change-interface=ens33 ##更改ens33的zone为work |
firewall-cmd zone=zone名 –remove-interface=网卡名:移除指定网卡的指定zone
1 | [root@kun0769 ~]# firewall-cmd --zone=work --remove-interface=ens33 ##在ens33上移除workzone |
firewall-cmd –get-active-zones:查看所有网卡的zone
1 | [root@kun0769 ~]# firewall-cmd --get-active-zones |
service是zone下的组成部分 相当于是zone里面的白名单
firewall-cmd –get-services:查看系统所有的service
firewall-cmd –list-services:查看默认zone的service
1 | [root@kun0769 ~]# firewall-cmd --list-services |
firewall-cmd –zone=zone名 –list-services:查看指定zone中的service
1 | [root@kun0769 ~]# firewall-cmd --zone=public --list-services |
firewall-cmd –zone=zone名 –add-service=服务:添加服务到指定的zone下
1 | [root@kun0769 ~]# firewall-cmd --zone=home --add-service=http ##把http服务添加到hone里 |
firewall-cmd–zone=zone名 –remove-service=服务:移除指定zone下的服务
1 | [root@kun0769 ~]# firewall-cmd --zone=home --remove-service=samba-client ##home下移除samba-client |
其中service里面的服务可以更改端口的 其中serveices的配置文件在 /etc/firewalld/services/
目录下,zone的配置文件在/etc/firewalld/zones/
目录下 而service和zone的模版文件分别在于 /usr/lib/firewalld/services/
和 /usr/lib/firewalld/zones/
下
–permanent:同时更改配置文件 不加数据只在内存中存放
1 | [root@kun0769 ~]# ls /etc/firewalld/zones/ ##只有pubic的配置文件 |
ftp服务自定义端口1121,需要在home zone下面放行ftp
1.把ftp的模版文件复制到services配置文件里 并修改端口为1121
1
2[root@kun0769 ~]# cp /usr/lib/firewalld/services/ftp.xml /etc/firewalld/services/ftp.xml
[root@kun0769 ~]# vim !$2.把home的模版文件复制到zone配置文件里 并添加ftp
1
2[root@kun0769 ~]# cp /usr/lib/firewalld/zones/home.xml /etc/firewalld/zones/home.xml
[root@kun0769 ~]# vim !$3.重新加载配置文件
1
2
3
4[root@kun0769 ~]# firewall-cmd --reload
success
[root@kun0769 ~]# firewall-cmd --zone=home --list-service ##home上已经添加了ftp
ssh mdns samba-client dhcpv6-client ftp