1. 程式人生 > 其它 >redhat 7.x 的防火牆軟體firewall 介紹

redhat 7.x 的防火牆軟體firewall 介紹

  1. zone 的概念。firewall 一般有9個zone ,配置檔案都在 /usr/lib/firewalld/zones/ 裡面。

    系統的配置檔案目錄就在 /usr/lib/firewalld 這個目錄

    使用者的配置檔案目錄再 /etc/firewalld

    在具體介紹zone之前學生先給大家介紹幾個相關的名詞,因為如果不理解這幾個名詞zone就無從入手。

    • target:目標,這個前面學生也已經給大家介紹過了,可以理解為預設行為,有四個可選值:default、ACCEPT、%%REJECT%%、DROP,如果不設定預設為default。ACCEPT:通過這個包。%%REJECT%%:拒絕這個包,並返回一個拒絕的回覆。DROP

      :丟棄這個包,不回覆任何資訊。default:不做任何事情。

    • service:這個在前面學生已經給大家解釋過了,他表示一個服務

    • port:埠,使用port可以不通過service而直接對埠進行設定

    • interface:介面,可以理解為網絡卡

    • source:源地址,可以是ip地址也可以是ip地址段

    • icmp-block:icmp報文阻塞,可以按照icmp型別進行設定

    • masquerade:ip地址偽裝,也就是按照源網絡卡地址進行NAT轉發

    • forward-port:埠轉發

    • rule:自定義規則

  2. firewall 常用命令

    firewall 的常用命令
    firewall-cmd --list-all #檢視firewall的所有配置
    firewall-cmd --reload #修改了配置之後平滑啟動

    zone 相關:
    firewall-cmd --get-zone #顯示支援的區域列表
    firewall-cmd --list-all-zones #列出全部區域啟用的特性
    firewall-cmd --get-default-zone #檢視預設的zone
    firewall-cmd --get-active-zone #檢視當前活躍的zone
    firewall-cmd --zone=XX --list-all #顯示XX區域詳情

    # firewall-cmd --set-default-zone=work //設定預設zone
    # firewall-cmd --get-zone-of-interface=ens33 //查指定網絡卡
    # 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

    service 相關:
    firewall-cmd --get-services #顯示支援的服務
    firewall-cmd --list-services #顯示預設zone開啟的服務,如果要查具體zone,加上引數--zone=XX
    firewall-cmd --zone=public --add-service=ssh --permanent #在public區裡面新增ssh服務,永久生效,一般後面需要在執行 --reload
  3. 安裝了最小化redhat7,在bash環境下,不能用tab鍵補全命令

    例如,我在設定防火牆的時候,輸出firewall-cmd ,按兩下tab鍵,沒有顯示選項命令。

    經過一番搜尋,這是由於系統缺少了bash-completion;用yum安裝,reboot之後,補全命令可用。