7.16 10.19-10.22
[root@hyc-01-01 ~]# service iptables save 保存iptables規則
該命令會將規則保存在/etc/sysconfig/iptables
將iptables規則備份到一個文件中
[root@hyc-01-01 ~]# iptables-save>/tmp/ipt.txt
將iptables規則備份到ipt.txt文件中
從備份規則的文件恢復iptables規則
[root@hyc-01-01 ~]# iptables-restore</tmp/ipt.txt
寫入/etc/sysconfig/iptables的規則會在開機時自動加載,其他備份文件的規則需要手動加載
10.20 firewalld的9個zone
[root@hyc-01-01 ~]# systemctl disable iptables 使netfilter殘廢
[root@hyc-01-01 ~]# systemctl stop iptables 停用netfilter
[root@hyc-01-01 ~]# systemctl enable firewalld 使能firewalld
[root@hyc-01-01 ~]# systemctl start firewalld 啟用firewalld
firewalld默認有9個ZONE,默認使用的ZONE是public;
每個ZONE都是一個規則集,包含多個規則;
查看所有的ZONE:
[root@hyc-01-01 ~]# firewall-cmd --get-zones
block dmz drop external home internal public trusted work
查看默認的ZONE:
[root@hyc-01-01 ~]# firewall-cmd --get-default-zone
Public
ZONE的區別:
drop(丟棄):任何接收的網絡數據包都將被丟棄,無任何回復,僅能有發送出去的網絡連接
數據包無法進入,但可以出去,安全性最佳
block(限制)任何接收的網絡連接都被ipv4的icmp-host-prohibited信息和ipv6的icmp6-adm-prohibited信息拒絕
主要針對icmp數據包做限制
public(公共):在公共區域內使用,不相信網絡內其他計算機不會對本機造成危害,只接收經過選取的連接
部分數據包放行,部分數據包限制
external:(外部):適合為路由器啟用了偽裝功能的外部網,不相信來自網絡的其他計算機,只接收經過篩選的連接
dmz(非軍事區):用於非軍事區內的電腦,此區域可公開訪問,可以有限的進入內部網絡,僅接收經過篩選的連接
work(工作):用於工作區,可以基本相信網絡內的電腦不會對本機造成危害,接收經過篩選的連接
通常為公司內網
home(家庭):與work類似
internal(內部):用於內部網絡,可以基本相信網絡內的計算機不會對本機造成危害,接收經過篩選的連接
通常不連外網
trusted(信任):可接收所有網絡連接
無任何限制
10.21 firewalld關於zone的操作
指定默認的ZONE:
[root@hyc-01-01 ~]# firewall-cmd --set-default-zone=work
Error: COMMAND_FAILED
[root@hyc-01-01 ~]# firewall-cmd --set-default-zone=work
Warning: ZONE_ALREADY_SET: work
success
[root@hyc-01-01 ~]# firewall-cmd --get-default-zone
Work
ZONE可以針對網卡操作
查看指定網卡使用的ZONE
[root@hyc-01-01 ~]# firewall-cmd --get-zone-of-interface=ens33
public
[root@hyc-01-01 ~]# firewall-cmd --get-zone-of-interface=ens37
no zone
[root@hyc-01-01 ~]# firewall-cmd --get-zone-of-interface=lo
no zone
後來添加的ens37為no zone:
1 復制ens33為ens37並改寫配置文件,重啟網絡服務
[root@hyc-01-01 ~]# cd /etc/sysconfig/network-scripts
[root@hyc-01-01 network-scripts]# cp ifcfg-ens33 ifcfg-ens37
[root@hyc-01-01 network-scripts]# vim ifcfg-ens37
[root@hyc-01-01 network-scripts]# systemctl restart network.service
2 重啟firewalld服務
[root@hyc-01-01 network-scripts]# systemctl restart firewalld
ens37使用work的ZONE
[root@hyc-01-01 network-scripts]# firewall-cmd --get-zone-of-interface=ens37
work
這樣使某個沒有ZONE的網卡有了ZONE
修改某個網卡的ZONE:
[root@hyc-01-01 network-scripts]# firewall-cmd --zone=dmz --add-interface=ens37
The interface is under control of NetworkManager, setting zone to 'dmz'.
success
[root@hyc-01-01 network-scripts]# firewall-cmd --get-zone-of-interface=ens37
Dmz
修改網卡ens37的ZONE為dmz
[root@hyc-01-01 network-scripts]# firewall-cmd --zone=public --add-interface=lo
success
[root@hyc-01-01 network-scripts]# firewall-cmd --get-zone-of-interface=lo
Public
將本來no zone的網卡增加ZONE為public
修改網卡的ZONE:
[root@hyc-01-01 network-scripts]# firewall-cmd --zone=block --change-interface=lo
success
[root@hyc-01-01 network-scripts]# firewall-cmd --get-zone-of-interface=lo
Block
刪除某個網卡的ZONE:
[root@hyc-01-01 network-scripts]# firewall-cmd --get-zone-of-interface=lo
block
[root@hyc-01-01 network-scripts]# firewall-cmd --zone=block --remove-interface=lo
success
[root@hyc-01-01 network-scripts]# firewall-cmd --get-zone-of-interface=lo
no zone
lo網卡的ZONE被刪除,變成no zone
[root@hyc-01-01 network-scripts]# firewall-cmd --zone=dmz --remove-interface=ens37
The interface is under control of NetworkManager, setting zone to default.
success
[root@hyc-01-01 network-scripts]# firewall-cmd --get-zone-of-interface=ens37
work
[root@hyc-01-01 network-scripts]# firewall-cmd --get-default-zone
Work
ens37的ZONE被刪除,變成默認的ZONE
查看系統所有網卡所在的ZONE:
[root@hyc-01-01 network-scripts]# firewall-cmd --get-active-zones
work
interfaces: ens33 ens37
block
interfaces: l9
10.22 firewalld關於service的操作
7.16 10.19-10.22