2013年1月31日 星期四

Fedora 18 的「防火牆」設定(一):開「通訊埠」

Fedora 18 的「防火牆」之「圖形化用戶介面(GUI)」設定程式換新了,新的設定程式功能很強。筆者以前設定比較複雜的「防火牆」時,都使用「Firewall Builder」,在設定過程中,得要時時檢查規則間衝突與否。雖然是比直接設定「IP Tables」要來得簡單些,但是,對「防火牆」沒有一些認識,還不容易搞定它。
    這次 Fedora 18 更新的「防火牆」設定程式「firewall-config」,較 Fedora 17(含)以前的設定過程很不相同,當然要特別記錄一下。最近安裝 Fedora 18 後,有兩個立即的「防火牆」設定需求。
  1. 開「通訊埠(port)」讓其它電腦可以建立連線或傳送訊息,如:FTP、SSH、mDNS 等。
  2. 用兩張網路卡(一內、一外),內部電腦利用「網路位址轉換(NAT)」分享對外網路。
本文將針為第一項需求做整理,並先介紹一下「firewall-config」的設定觀念。至於第二個需求,下次再介紹。

一、啟動「圖形化用戶介面」的「防火牆」設定程式

從桌面左上角的「概覽」點選左邊的「程式快選區」最下方的「九個小方塊」後,點選右方的「程式分類」中的「其它」,接著點選中間欄最下方的「防火牆」,啟動「firewall-config」這個設定程式。
如果桌面是切換在「後備模式」,則是在「程式選單」的「應用程式」→「其它」點選「防火牆」,以啟動「firewall-config」這個設定程式

二、Root 密碼驗證

程式啟動後出現「要求驗證」的視窗,要求 root 身份認證密碼。
「後備模式」的認證視窗畫面比較單調些。
鍵入正確 root 密碼後,進入設定畫面。

三、「防火牆設定」程式介面

在講解設定方法之前,先介紹一下程式介面,
程式介面分成幾個區域,
Current View顯示目前「防火牆」編輯中的設定之時效長短()。『Runtime Configuration』為『暫時性』設定,『Persistent Configuration』為『永久性』設定。上圖為『永久性』設定正在編輯中。
Default Zone『預設區』,預設為「網路卡」使用「防火牆」的『區』設定。預設為『public zone(公眾區)』,除標籤為 Services(服務)那一欄有設定外,其它欄皆為空白。
Zone「防火牆」的『區』。設定程式已經預設幾個『區』的設定,被選定編輯的『區』以『反白』表示。上圖為『public 區』被選定編輯中。
Services網路『服務』,網路通訊常以「通訊埠」分辨不同的『服務』,常用的「通訊埠」有其特定的名稱。此欄中顯示被選定編輯的『區』中各項『服務』的狀態(☑ 表開啟,☐ 表關閉),改變勾選狀態即可變更其狀態。『public 區』的預設開啟通訊埠為:dhcpv6-client (546/udp), mdns (5353/dup), ssh (22/tcp) 三個。
Ports為「通訊埠」的設定欄,預設為空的。

:「防火牆」的不同時效的適用時機:在維護系統,需暫時變更設定方便維護時,使用『暫時性』設定(重新載入「防火牆」後恢復原設定值);希望下次開機時,新的設定仍可維持,使用『永久性』設定。

四、關閉『public 區』預設開啟的『服務』之通訊埠

在『public 區』中,可把原來預設開啟,但目前不用的埠號關閉,減少風險。例:把 SSH 前的打勾取消,可關閉 SSH 預設開啟的 22/tcp 埠。

五、開啟『public 區』的新設的通訊埠

當有新的服務要啟動時,要先把使用的埠號開啟,不然外面電腦是連不進來的。
  • 從「Ports(通訊埠)」按右方的【加入】按鈕,會跳出一個『通訊埠與通訊協定』的設定視窗。
  • 在『通訊埠/通訊埠範圍』輸出新的「通訊埠」編號,
  • 接著選取『通訊協定』(有 tcp 及 udp 兩個選擇)。
  • 最後,按【確定】完成新增「通訊埠」的設定。
上圖的例子為:假設 SSH 的新埠號要改到 5566/tcp。

六、套用新的「防火牆」設定

當新的「防火牆」設定完成,若缺少這個步驟,剛才「防火牆」的設定是沒有作用(註:要下次開機後,才會生效)。想要讓剛才的設定立即生效,有兩個方法。
  • 從「功能選單」的「選項」再點選「Reload Firewalld」,或
  • 按「⟳」這個圖示。
這兩個方法都會立即『重新載入』FirewallD,也就是「防火牆」重新啟動、設定。

已測試版本:

  • Fedora: 18

參考資料:

沒有留言:

張貼留言

感謝你耐心看完本文,歡迎留下任何指正、建議,筆者會儘快回應。(English is also welcome.)