UFW 防火牆預裝在Ubuntu而且,顧名思義,UFW 日誌可以提供有關防火牆如何處理傳入和傳出請求的由內而外的信息。
但在此之前,您需要檢查是否啟用了 UFW 日誌記錄:
sudo ufw status verbose
如果你得到的輸出是 Logging: on (low)
你很高興,但如果它顯示 Logging: off
如上所示,使用以下命令啟用 UFW 日誌記錄:
sudo ufw logging on
登錄 UFW 後,您可以使用 less 命令檢查系統上的 UFW 防火牆日誌:
sudo less /var/log/ufw.log
這麼多複雜的術語,對吧? 好吧,您不必擔心它們; 稍後我將分解 UFW 註冊中使用的所有術語。
但在此之前,讓我分享幾種查看UFW記錄的方法。
如何在 Linux 上檢查 UFW 防火牆日誌
有幾種方法可以檢查 UFW 防火牆日誌; 我已經在本指南的開頭分享了其中一個。
那麼讓我們來看看剩下的那些。
使用 tail 命令檢查防火牆日誌
如果您正在尋找一種實時監控防火牆日誌的方法,可以使用 tail 命令。
默認情況下,tail 命令將顯示文件的最後 10 行,但與 -f
選項,您可以監控您可以實時覆蓋防火牆日誌:
tail -f /var/log/ufw.log

使用 grep 命令檢查防火牆日誌
除了 /var/log/ufw
,還有另外兩個地方可以找到 UFW 防火牆日誌。 但這些位置不僅僅特定於防火牆日誌。
也就是說,您還會在那裡找到其他服務的記錄。 在那些時候,您可以使用 grep 命令來過濾結果。
所以你可以過濾 UFW 防火牆日誌 syslog
:
grep -i ufw /var/log/syslog
或者您可以通過以下方式過濾結果 kern.log
:
grep -i ufw /var/log/kern.log
因為兩者都會給你相同的結果:

現在,讓我們來看看不同級別的 UFW 防火牆日誌記錄。
如何更改 UFW 防火牆的日誌記錄級別
默認情況下,日誌會記錄在低級別:

但在介紹如何更改默認規則之前,讓我解釋一下您可以使用的不同級別的日誌記錄。
不同級別的 UFW 防火牆日誌記錄
UFW 註冊有 5 個級別。
-
off
: 這意味著日誌記錄被禁用。 -
low
:將存儲與當前防火牆規則不匹配的阻止數據包相關的日誌,並顯示與註冊規則相關的日誌條目。
是的,您還可以指定註冊規則,我將在本指南的最後部分向您展示如何操作。 -
medium
:除了低層提供的所有日誌之外,您還可以獲得無效數據包、新連接和通過速率限製完成的日誌記錄。 -
high
:將包括限速和非限速數據包的記錄。 -
full
:此級別與高級級別類似,但不包括速度限制。
現在,如果您想更改默認級別或當前日誌記錄級別,您只需遵循給定的命令結構:
sudo ufw logging logging_level
所以如果我想將我當前的日誌級別更改為 medium
可以使用給定的命令來完成:
sudo ufw logging medium

如何添加 UFW 註冊規則
正如我之前提到的,您可以添加日誌記錄規則,尤其是當您想要監控特定服務時。
我建議更改您的日誌記錄級別 low
減少日誌中的混亂,並且可以更具體地進行有意監視。
要添加註冊規則,您只需遵循以下命令語法:
sudo ufw allow log service_name
例如,我添加了端口號的註冊規則。 22(SSH):
sudo ufw allow log 22/tcp

解讀 UFW 防火牆日誌
使用顯示的任何方法獲取 UFW 防火牆日誌後,您將獲得如下內容(默認設置):

如果你添加了我上面顯示的 UFW 註冊規則,你會發現一些額外的東西:

如您所見,兩張圖片略有不同,我將在此處介紹它們。
-
Dec 2 05:48:09 LHB kernel: [ 180.759805]
:顯示自啟動以來的日期、時間、主機名和內核時間。 -
[UFW BLOCK]
:如果您在默認配置中使用 UFW 日誌,則日誌級別鎖定在低級別。 這意味著它只會顯示不符合 UFW 規則的被拒絕的數據包。
和UFW BLOCK
它只是表明數據包被阻止了。 -
[UFW ALLOW]
:儘管有默認的日誌記錄級別,但如果您添加了日誌記錄規則,它將記錄與該服務相關的所有詳細信息,並且UFW ALLOW
表示允許該數據包。 -
IN=ens33
:顯示數據包到達的接口。 -
OUT=
:對於大多數用戶來說,這將沒有任何價值,如果它指示一個值,則意味著有一個傳出事件。 -
MAC=00:0c:29:71:06:82:8c:b8:7e:b7:f7:46:08:00
: 整個數字和字母串只不過是源MAC地址和目標MAC地址的組合。 -
SRC=192.168.1.7
:表示數據包的源IP地址。 -
DST=192.168.1.5
: 顯示數據包的目標 IP 地址,它將是您系統的 IP。 -
LEN=60
: 顯示數據包的長度(在我的例子中是 60 字節)。 -
TOS=0x10
:表示服務類型。 -
PREC=0x00
:顯示服務類型“優先級”。 -
TTL=64
:顯示數據包的 TTL(生存時間)。 簡單來說,它會告訴你如果沒有指定目的地,數據包將反彈多長時間直到它過期。 -
ID=4444
: 它將為您提供 IP 數據報的唯一 ID,並將由相同數據包的片段共享。 -
DF
:TCP“不分段”標誌。 -
PROTO=TCP
:顯示用於數據包傳輸的協議。 -
SPT=55656
:獲取數據包的源端口。 -
DPT=22
:表示數據包的目的端口。 -
WINDOW=64240
: 顯示 TCP 窗口的大小。 -
RES=0x00
:表示保留位。 -
SYN URGP=0
: 這裡SYN
標誌表示建立新連接的請求,並且URGP=0
表示未建立連接。 -
ACK
:承認的旗幟它用於指示主機成功接收數據包。 -
PSH
:推送標誌指示傳入數據應流式傳輸到應用程序而不是增強。
結尾
在本指南中,我介紹了 UFW 防火牆日誌的一些基礎知識,包括如何啟用它們、更改級別以及防火牆日誌的內容。
您可以在下面的本指南中了解有關 UFW 的更多信息。
我希望你覺得它有用,如果你有任何問題或建議,請在評論中留下。