iptables规则备份和恢复、firewalld的9个zone、firewalld关于zone的操作、firewalld关于service的操作

目录

一、iptables规则备份和恢复
二、firewalld的9个zone
三、 firewalld关于zone的操作
四、 firewalld关于service的操作

一、iptables规则备份和恢复

  • service iptables save 会把规则保存到 /etc/sysconfig/iptables
[root@minglinux-01 ~]# service iptables save
iptables: Saving firewall rules to /etc/sysconfig/iptables:[  确定  ]
  • 使用iptables-save命令把规则重定向到一个文件里
[root@minglinux-01 ~]# iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o ens33 -j MASQUERADE
[root@minglinux-01 ~]# iptables-save > /tmp/ipt.txt
[root@minglinux-01 ~]# cat /tmp/ipt.txt 
# Generated by iptables-save v1.4.21 on Mon Oct 29 21:21:58 2018
*nat
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 192.168.100.0/24 -o ens33 -j MASQUERADE
COMMIT
# Completed on Mon Oct 29 21:21:58 2018
# Generated by iptables-save v1.4.21 on Mon Oct 29 21:21:58 2018
*filter
:INPUT ACCEPT [132:8932]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [72:8992]
COMMIT
# Completed on Mon Oct 29 21:21:58 2018
  • 使用iptables-restore恢复刚才的规则
[root@minglinux-01 ~]# iptables -t nat -F
[root@minglinux-01 ~]# iptables -t nat -nvL
Chain PREROUTING (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
[root@minglinux-01 ~]# iptables-restore < /tmp/ipt.txt 
[root@minglinux-01 ~]# iptables -t nat -nvL
Chain PREROUTING (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 MASQUERADE  all  --  *      ens33   192.168.100.0/24     0.0.0.0/0 

二、firewalld的9个zone

  • 打开firewalled
    前面我已经把firewalled禁用了,现在反过来要关闭iptables
    服务,打开firewalld服务,示例命令如下:
[root@minglinux-01 ~]# systemctl disable iptables 
Removed symlink /etc/systemd/system/basic.target.wants/iptables.service.
[root@minglinux-01 ~]# systemctl stop iptables
[root@minglinux-01 ~]# systemctl enable firewalld
Created symlink from /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service to /usr/lib/systemd/system/firewalld.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/firewalld.service to /usr/lib/systemd/system/firewalld.service.
[root@minglinux-01 ~]# systemctl start firewalld
  • firewalled的zone
    firewalld有两个基础概念,分别是zone和service,每一个zone里面有不同的iptables规则,默认一共有9个zone,而CentOS 7默认的zone为public。

获取系统所有的zone:firewall-cmd --get-zones
查看系统默认的zone: firewall-cmd --get-default-zone

[root@minglinux-01 ~]# firewall-cmd --get-zones
block dmz drop external home internal public trusted work
[root@minglinux-01 ~]# firewall-cmd --get-default-zone
public

firewalled的9个zone:

drop(丢弃):任何接收的网络数据包都被丢弃,没有任何回复。仅能有发送出去的网络连接。
block(限制):任何接收的网络连接都被 IPv4 的icmp-host-prohibited信息和 IPv6 的
icmp6-adm-prohibited信息所拒绝。
public(公共):在公共区域内使用,不能相信网络内的其他计算机不会对你的计算机造成危害,只能接收经过选取的连接。
external(外部):特别是为路由器启用了伪装功能的外部网。你不能信任来自网络的其他计算,不能相信它们不会对你的计算机造成危害,只能接收经过选择的连接。
dmz(非军事区):用于你的非军事区内的计算机,此区域内可公开访问,可以有限地进入你的内部网络,仅仅接收经过选择的连接。
work(工作):用于工作区。你可以基本相信网络内的其他计算机不会危害你的计算机。仅仅接收经过选择的连接。
home(家庭):用于家庭网络。你可以基本信任网络内的其他计算机不会危害你的计算机。仅仅接收经过选择的连接。
internal(内部):用于内部网络。你可以基本上信任网络内的其他计算机不会威胁你的计算机。仅仅接受经过选择的连接。
trusted(信任):可接受所有的网络连接。

三、 firewalld关于zone的操作

  • firewall-cmd --set-default-zone=work //设定默认zone

  • fire-cmd --get-zone-of-interface=ens33 //查指定网卡所在zone

  • firewall-cmd --zone=public --add-interface=lo //给指定网卡设置zone

  • firewall-cmd --zone=dmz --change-interface=lo //针对网卡更改zone

  • firewall-cmd --zone=dmz --remove-interface=lo //针对网卡删除zone

  • firewall-cmd --get-active-zones //查看系统所有网卡所在的zone

四、 firewalld关于service的操作

每一个zone里面都使用了不同
的service,而service就是针对一个服务(端口)做的iptables规则。
这些service都是由一个个配置文件定义的,配置文件的模板在/usr/lib/firewalld/services/目录下,真正生效的配置在/etc/firewalld/services目录下面(默认为空):

[root@minglinux-01 ~]#  ls /usr/lib/firewalld/services/
amanda-client.xml        nfs.xml
amanda-k5-client.xml     nrpe.xml
bacula-client.xml        ntp.xml
bacula.xml               openvpn.xml
bitcoin-rpc.xml          ovirt-imageio.xml
bitcoin-testnet-rpc.xml  ovirt-storageconsole.xml
bitcoin-testnet.xml      ovirt-vmconsole.xml
bitcoin.xml              pmcd.xml
ceph-mon.xml             pmproxy.xml
ceph.xml                 pmwebapis.xml
cfengine.xml             pmwebapi.xml
condor-collector.xml     pop3s.xml
ctdb.xml                 pop3.xml
dhcpv6-client.xml        postgresql.xml
dhcpv6.xml               privoxy.xml
dhcp.xml                 proxy-dhcp.xml
dns.xml                  ptp.xml
docker-registry.xml      pulseaudio.xml
dropbox-lansync.xml      puppetmaster.xml
elasticsearch.xml        quassel.xml
freeipa-ldaps.xml        radius.xml
freeipa-ldap.xml         RH-Satellite-6.xml
freeipa-replication.xml  rpc-bind.xml
freeipa-trust.xml        rsh.xml
ftp.xml                  rsyncd.xml
ganglia-client.xml       samba-client.xml
ganglia-master.xml       samba.xml
high-availability.xml    sane.xml
https.xml                sips.xml
http.xml                 sip.xml
imaps.xml                smtp-submission.xml
imap.xml                 smtps.xml
ipp-client.xml           smtp.xml
ipp.xml                  snmptrap.xml
ipsec.xml                snmp.xml
iscsi-target.xml         spideroak-lansync.xml
kadmin.xml               squid.xml
kerberos.xml             ssh.xml
kibana.xml               synergy.xml
klogin.xml               syslog-tls.xml
kpasswd.xml              syslog.xml
kshell.xml               telnet.xml
ldaps.xml                tftp-client.xml
ldap.xml                 tftp.xml
libvirt-tls.xml          tinc.xml
libvirt.xml              tor-socks.xml
managesieve.xml          transmission-client.xml
mdns.xml                 vdsm.xml
mosh.xml                 vnc-server.xml
mountd.xml               wbem-https.xml
mssql.xml                xmpp-bosh.xml
ms-wbt.xml               xmpp-client.xml
mysql.xml                xmpp-local.xml
nfs3.xml                 xmpp-server.xml
  • firewall-cmd --get-service //查看当前系统所有的service
[root@minglinux-01 ~]# firewall-cmd --get-service
RH-Satellite-6 amanda-client amanda-k5-client bacula bacula-client bitcoin bitcoin-rpc bitcoin-testnet bitcoin-testnet-rpc ceph ceph-mon cfengine condor-collector ctdb dhcp dhcpv6 dhcpv6-client dns docker-registry dropbox-lansync elasticsearch freeipa-ldap freeipa-ldaps freeipa-replication freeipa-trust ftp ganglia-client ganglia-master high-availability http https imap imaps ipp ipp-client ipsec iscsi-target kadmin kerberos kibana klogin kpasswd kshell ldap ldaps libvirt libvirt-tls managesieve mdns mosh mountd ms-wbt mssql mysql nfs nfs3 nrpe ntp openvpn ovirt-imageio ovirt-storageconsole ovirt-vmconsole pmcd pmproxy pmwebapi pmwebapis pop3 pop3s postgresql privoxy proxy-dhcp ptp pulseaudio puppetmaster quassel radius rpc-bind rsh rsyncd samba samba-client sane sip sips smtp smtp-submission smtps snmp snmptrap spideroak-lansync squid ssh synergy syslog syslog-tls telnet tftp tftp-client tinc tor-socks transmission-client vdsm vnc-server wbem-https xmpp-bosh xmpp-client xmpp-local xmpp-server
  • firewall-cmd --list-services // 查看当前zone下有哪些service
[root@minglinux-01 ~]# firewall-cmd --get-default-zone 
work
[root@minglinux-01 ~]# firewall-cmd --list-services 
ssh dhcpv6-client
[root@minglinux-01 ~]#  firewall-cmd --zone=public --list-service    //查看指定zone下有哪些service
ssh dhcpv6-client
  • firewall-cmd --zone=public --add-service=http //在一个zone里面增加一个service
[root@minglinux-01 ~]# firewall-cmd --zone=public --add-service=http
success
[root@minglinux-01 ~]# firewall-cmd --zone=public --list-service 
ssh dhcpv6-client http
  • firewall-cmd --zone=public --add-service=http --permanent
    //修改配置文件,之后会在/etc/firewalled/zones目录下生成配置文件
[root@minglinux-01 ~]# firewall-cmd --zone=public --add-service=http --permanent 
success
[root@minglinux-01 ~]# cat /etc/firewalld/zones/public.xml
<?xml version="1.0" encoding="utf-8"?>
<zone>
  <short>Public</short>
  <description>For use in public areas. You do not trust the other computers on networks to not harm your computer. Only selected incoming connections are accepted.</description>
  <service name="ssh"/>
  <service name="dhcpv6-client"/>
  <service name="http"/>
</zone>
  • 需求:ftp服务自定义端口1121,需要在work zone下面放行ftp
[root@minglinux-01 ~]# cp /usr/lib/firewalld/services/ftp.xml /etc/firewalld/services/      //usr/lib/firewalld/services/目录下面为所有service的模板配置文件
[root@minglinux-01 ~]# vim /etc/firewalld/services/ftp.xml    // 把里面的21改为1121
[root@minglinux-01 ~]# cp /usr/lib/firewalld/zones/work.xml /etc/firewalld/zones/    
[root@minglinux-01 ~]# vim /etc/firewalld/zones/work.xml     // 在里面增加一行FTP相关的配置,内容为 <service name="ftp"/>
 [root@minglinux-01 ~]# firewall-cmd --reload    // 重新加载
success
  • 验证一下work zone里面的service是否有FTP:
[root@minglinux-01 ~]# firewall-cmd --zone=work --list-services 
ssh dhcpv6-client ftp
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,236评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,867评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,715评论 0 340
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,899评论 1 278
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,895评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,733评论 1 283
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,085评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,722评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,025评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,696评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,816评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,447评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,057评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,009评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,254评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,204评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,561评论 2 343

推荐阅读更多精彩内容