1. 程式人生 > >日常運維(五)

日常運維(五)

firewalled

CentOS 7

firewalled

  1. 打開firewalled

     systemctl disable iptables     #關閉服務
     systemctl stop iptables         #停止運行的服務
     systemctl enable firewalld    #開啟firewalld服務
     systemctl start firewalld        #打開firewalld服務

firewalld默認有9個zone (zone是個單位)
默認zone 為public
每個zone是一個規則集

firewall-cmd --get-zones      ##查看所有zone
firewall-cmd --get-default-zone    ##查看默認zone

9個zone、

 drop、 block、 public、 external、 dmz、 work、 home、 internal、trusted  

drop( 丟棄),任何接收的網絡數據包都被丟棄,沒有任何回復。
僅能有發送出去的網絡連接。

block( 限制) 任何接收的網絡連接都被PV4 的icmp-host-prohibited信息和PV6 的icmp6-adm-prohibited 信息所拒絕

public (公共)在公共區域內使用,
不能相信網絡內的其他計算機不會對你的計算機造成危害,只能接收經過選取的連接。

external (外部)特別是為路由器啟用了偽裝功能的外部網。
你不能信任來自網絡的其他計算,不能相信它們不會對你的計算機造成危害,只能接收經過選擇的連接。

dmz (非軍事區)用於你的非軍事區內的電腦,
此區域內可公開訪問,可以有限地進入你的內部網絡,僅僅接收經過選擇的連接。

work( 工作) 用於工作區。
你可以基本相信網絡內的其他電腦不會危害你的電腦。僅僅接收經過選擇的連接。

home (家庭)用於家庭網絡。
你可以基本信任網絡內的其他計算機不會危害你的計算機。僅僅接收經過選擇的連接。

internal (內部) 用於內部網絡。
你可以基本上信任網絡內的其他計算機不會威脅你的計算機。僅僅接受經過選擇的連接。

trusted (信任)可接受所有的網絡連接。

關於zone的操作

firewall-cmd --set-default-zone=work  #設定默認zone
firewall-cmd --get-zone-of-interface=ens37  #查找指定的網卡
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

[root@huidou01 ~]$ firewall-cmd --get-zone-of-interface=ens37
no zone
#需要手動關閉systemctl stop NetworkManager 服務  

[root@huidou01 ~]$ firewall-cmd --zone=work --add-interface=ens37
    success
[root@huidou01 ~]$ firewall-cmd --get-zone-of-interface=ens37  
work

services 概念

zone下面的一個單元,或者說是一個指定的端口

firewall-cmd --get-service    //查看所有的service
firewall-cmd --list-service     //查看當前zone下面有哪些service
firewall-cmd --zone=public --add-service=http      //把http增加到public zone下面
firewall-cmd --zone=public --remove-service=http    //在public zone中刪除

ls /usr/lib/firewalld/zones/ zone的配置文件模板

firewall-cmd --zone=public --add-service=http --permanent 更改配置文件,之後會在/etc/firewalld/zones目錄下面生成配置文件

#需求:ftp服務自定端口1121,需要在work zone下面放行ftp

cp /usr/lib/firewalld/services/ftp.xml  /etc/firewalld/services
vi /etc/firewalld/service/ftp.xml    把21端口改成1121
cp /usr/lib/firewalld/zones/work.xml  /etc/firwalld/zones/
vi /etc/firewalld/zones/work.xml    增加一行
    <service name="ftp"/>
firewall-cmd --reload    重新加載
firewall-cmd --zone=work --list-services

firewalld zone 規則集合每個zone都有iptables規則

每個zone下面都有 service,如果有service 就作為白名單放行,把服務增加到配置文件裏去然後reload就行 

日常運維(五)