Linux
防火牆:記錄到自定義文件
我正在執行帶有Shorewall防火牆的Ubuntu Server 14.04系統。Shorewall 本質上是iptables的前端,它是通過 Netfilter 進行日誌記錄的 iptables(我目前的理解)。
我的問題是我無法理解有關登錄到不同目的地的岸牆文件。這就是我已經走了多遠:
- 我安裝並開始
ulogd
- 我在中定義了一個變數
/etc/shorewall/params
:LOG=NFLOG
- 我將所有出現
info
的$LOG``/etc/shorewall/shorewall.conf
- 我將日誌目標設置為
/etc/shorewall/shorewall.conf
:LOGFILE=/var/log/shorewall
這應該完成以下任務: Netfilter 將日誌記錄到
NFLOG
(繼任者ULOG
)目的地,這意味著 Netfilter 日誌消息由ulogd2
.我不知道的是,我如何知道
ulogd2
將所有岸牆消息寫入我想要的日誌文件/var/log/shorewall
。正如這個論壇文章所證明的那樣,文件對此相當不清楚。我發現這篇博文同樣含糊不清,關於
ulogd2
’ 的日誌重定向。總之:
- 我的重定向岸牆日誌消息的方法是否完全
ulogd2
正確?- 如何配置
ulogd2
將shorewall的消息重定向到/var/log/shorewall
?PS:我不是在 AskUbuntu 上問這個問題,因為這與其他 Linux 發行版同樣相關。
Ubuntu 使用 rsyslog,因此您可以將其配置為過濾消息並將它們寫入任意日誌文件,例如創建文件 /etc/rsyslog.d/shorewall.conf
:msg, contains, "Shorewall:" /var/log/shorewall & ~
或者如果你想把事情分開一些
:msg, contains, "Shorewall:cust2net:ACCEPT:" /var/log/shorewallc2na.log & ~ :msg, contains, "Shorewall:" /var/log/shorewall & ~
它將所有包含“Shorewall:cust2net:ACCEPT:”的消息放入一個日誌文件,將任何其他包含“Shorewall”的消息放入另一個日誌文件。
您需要重新啟動 rsyslogd 才能使其生效。