Ubuntu UFW 防火牆教學:從安裝、設定到安全強化完整指南

1. 前言

防火牆在 Ubuntu 中的重要性

連接到網際網路的系統總是面臨來自外部未經授權的存取風險。為了保護系統免受這些風險,防火牆是不可或缺的工具。Ubuntu 標準配備了一個特別適合初學者的防火牆工具:「UFW(Uncomplicated Firewall)」,它以簡單的操作提供強大的安全性。

本文將詳細說明 UFW 的安裝、設定、狀態檢查和故障排除等必要步驟。即使是初學者也能輕鬆設定防火牆,並將其作為強化 Ubuntu 安全性的指南。

2. Ubuntu 防火牆工具:UFW 是什麼?

UFW 概述與優點

UFW 是「Uncomplicated Firewall」的縮寫,顧名思義,它是一個能以簡單操作設定防火牆的工具。它專為 Ubuntu 和 Debian 系列系統設計,即使不熟悉命令列的人也能輕鬆使用。如果需要進行更進階的防火牆設定,建議使用 Linux 標準的 iptables,但 UFW 消除了其複雜性,讓您可以透過簡單的操作來管理安全性。

UFW 的主要優點

     

  • 指令簡潔:可以用簡短的指令管理防火牆設定,非常適合初學者。
  •  

  • 預設安全:預設阻擋所有入站流量,並允許所有出站流量,開箱即用。
  •  

  • 設定靈活:可以針對連接埠、IP 位址或網路單位設定自訂規則。

3. UFW 的安裝與基本設定

UFW 的安裝方法

通常,UFW 會預先安裝在 Ubuntu 中,但如果沒有安裝,可以使用以下指令進行安裝:

sudo apt update
sudo apt install ufw

UFW 的啟用與停用

啟用 UFW 後,來自外部的所有入站連線將被阻擋,只允許來自內部的出站連線。可以使用以下指令啟用或停用 UFW:

     

  • 啟用 UFW
  sudo ufw enable

輸出範例

  Firewall is active and enabled on system startup
     

  • 停用 UFW
  sudo ufw disable

設定預設策略

為了正確配置防火牆,我們將設定 UFW 的預設策略。使用以下指令設定阻擋入站連線並允許出站連線:

     

  • 拒絕(阻擋)入站連線
  sudo ufw default deny incoming
     

  • 允許出站連線
  sudo ufw default allow outgoing

這樣就建立了一個安全的環境,阻擋不必要的存取,同時允許內部通訊。

4. UFW 狀態檢查方法

檢查 UFW 狀態與已設定的規則

要檢查 UFW 的目前狀態和已設定的規則,請執行以下指令:

sudo ufw status verbose

輸出範例

Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing)
New profiles: skip

此輸出顯示了目前狀態(active)、日誌設定、預設策略以及套用的規則詳情。

5. UFW 規則設定

建議設定必要規則

作為基本的安全措施,建議允許以下主要連接埠:

     

  • 允許 HTTP(連接埠 80)和 HTTPS(連接埠 443)
  sudo ufw allow 80/tcp
  sudo ufw allow 443/tcp
     

  • 允許 SSH(連接埠 22):這是確保遠端安全連線所必需的。
  sudo ufw allow 22/tcp

特定 IP 位址或網路的存取控制

     

  • 允許來自特定 IP 位址的 SSH 存取
  sudo ufw allow from 192.168.1.100 to any port 22
     

  • 指定網路範圍允許存取
  sudo ufw allow from 192.168.1.0/24

這樣可以安全地允許來自特定 IP 位址或網路的連線,並限制不必要的存取。

6. UFW 的日誌管理

啟用日誌功能與設定日誌級別

啟用 UFW 的日誌功能可以記錄存取成功與否,並偵測可疑活動。日誌儲存在系統的 /var/log 目錄中。

     

  • 啟用日誌
  sudo ufw logging on
     

  • 設定日誌級別(建議 high)
  sudo ufw logging high

查看日誌

要即時查看日誌,請使用以下指令:

sudo tail -f /var/log/syslog

如果發現大量可疑存取,可以阻擋相關 IP,進一步強化安全性。

7. UFW 的圖形使用者介面工具:Gufw 介紹

Gufw 的安裝與使用

對於不習慣命令列操作的使用者,推薦使用 UFW 的圖形使用者介面工具 Gufw。透過 Gufw,您可以直觀地設定規則和查看日誌。

     

  • 安裝
  sudo apt install gufw
     

  • 規則設定:啟動 Gufw,從「規則」分頁設定特定連接埠的允許或拒絕。例如,可以從「預設」輕鬆允許 HTTP、HTTPS 和 SSH。
Gufw

圖片:Gufw

8. 故障排除

常見問題與解決方案

     

  1. UFW 無法啟用
     

  • 請使用 sudo ufw reset 初始化設定,然後重新設定。
     

  1. 特定服務被阻擋
     

  • 請檢查相關連接埠是否已允許,並使用 sudo ufw allow 新增必要的連接埠。
     

  1. Gufw 無法啟動
     

  • 重新安裝或重新啟動系統可能可以解決問題。

9. 總結

本文詳細說明了 Ubuntu 防火牆設定所需的 UFW 基本操作、建議設定和故障排除。透過正確配置防火牆並定期檢查規則和日誌,可以強化安全性。

定期維護的重要性

即使 UFW 設定一次啟用,也必須定期檢視設定內容和日誌,確認是否有可疑的存取。安全性是持續性的措施,妥善維護防火牆可以確保系統安全。具體來說,建議定期檢查以下幾點:

     

  • 根據新服務的增加或刪除來檢視規則:安裝新服務或刪除不必要的服務時,請務必檢查防火牆規則並視需要更新。
  •  

  • 監控日誌:定期檢查 UFW 日誌,查看是否有可疑的存取或錯誤。如果來自特定 IP 位址的存取經常被拒絕,可以採取措施阻擋該 IP。
  •  

  • 整理規則:長期使用後,可能會累積不必要的規則。整理規則不僅有助於安全性,也有助於管理效率。
侍エンジニア塾