Centos7

firewalld:記錄被阻止的傳出連接

  • March 6, 2022

我已經配置了firewalld,這樣防火牆也會阻止傳出連接。我需要通過添加特定規則將傳出流量列入白名單。這工作正常。

但現在我想知道,是否有傳出連接目前仍被防火牆阻止。要檢查這一點,我已設置並LogDenied重新all啟動/重新載入 firewalld。現在我可以看到許多防火牆消息,/var/log/messages用於REJECT接收消息,例如

Mar  5 19:45:29 kvm011 kernel: FINAL_REJECT: IN=br0-enp3s0 OUT= MAC=80:ee:73:9d:59:09:98:9b:cb:bf:c3:7e:08:00 SRC=192.168.1.254 DST=192.168.1.3 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=55873 DF PROTO=TCP SPT=41047 DPT=80 WINDOW=29200 RES=0x00 SYN URGP=0 

但似乎不會記錄被阻止的傳出流量。我已經對其進行了測試: SMTP 埠 25 未針對傳出流量列入白名單。因此,如果我嘗試發送電子郵件,該電子郵件被標記為“延遲”,並且我在郵件日誌中看到該電子郵件無法發送:

Mar  5 19:46:21 kvm011 postfix/smtp[3240]: connect to xxx.xxx.org[193.111.xxx.xxx]:25: Connection timed out

但是/var/log/messages文件中沒有防火牆消息(對於埠 25 上的阻塞連接)。我必須在firewalld中啟動這些消息嗎?如果是這樣,我該怎麼做?

找到了!我必須添加明確的規則來啟用傳出阻塞連接的日誌記錄:

firewall-cmd --direct --permanent --add-rule ipv4 filter OUTPUT 1 -j LOG --log-prefix \"FINAL_REJECT: \" --log-level 4

重新載入或重新啟動 firewalld 後,我得到了預期的日誌,例如:

Mar  6 11:56:01 kvm011 kernel: FINAL_REJECT: IN= OUT=br0-enp3s0 SRC=192.168.1.3 DST=193.111.xxx.xxx LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=59572 DF PROTO=TCP SPT=57134 DPT=25 WINDOW=29200 RES=0x00 SYN URGP=0 

引用自:https://serverfault.com/questions/1095433