如何用rsyslog確保遠程Linux日誌安全?

http://www.itwaka.com/

 

在最近版本的紅帽企業級Linux(RHEL)中用到了rsyslog。雖然這個日誌解決方案和傳統的BSD日誌服務syslogd類似,但它還提供一些功能來保證日誌信息到遠程日誌主機的可靠傳輸。本文中,你將會看到這些功能。

  BSD syslog具有中央日誌主機的可配置性。這在嚴肅執行日誌管理的系統中是個不錯的主意。在大型環境中,如果日誌文件通過多個主機傳播,它們追蹤起來非常 困難。但是,傳統的syslog只提供通過UDP的遠程記錄,它不追蹤連接和沒有保證的主機上的日誌信息到達。Rsyslog解決方案在三個遠程日誌解決 方案中提供選擇:UDP、TCP和最新開發的RELP協議,RELP協議只能用於最新版本的rsyslog。

  當發出數據包時,UDP沒有建立連接,這意味着這些信息的發出者只能相信該信息會到達其目的地。TCP協議在數據與其它主機交換之前就建立了連 接。該解決方案簡單且高效:TCP信息的接收者告知已收到,所以發信人在信息到達時會得到確認。由於其廣泛的可用性和周密的信息管理,TCP成爲更受青睞 的選擇。RELP協議相對來說還很新且沒有普遍應用,這也是現階段要避免使用的原因。

  要啓用UDP或者TCP日誌,你需要啓用一個特定模塊。Rsyslog使用輸入模塊和輸出模塊來啓用來自特定來源的日誌信息接收併發送日誌信息 到特定輸出目的地。要確保該中央日誌主機能通過TCP接收日誌信息,你需要在它的etc/rsyslogd.conf中包括以下兩行:

$ModLoad imtcp
$InputTCPServerRun 514

  這幾行的第一行負載輸入模塊tcp,第二行告訴rsyslog聽從端口514上傳入的TCP連接。接着,告訴主機必須將信息發送到遠程主機。接下來的命令告訴本地主機將所有日誌信息發送到一箇中央日誌主機,它在IP地址192.168.0.1下可用:

*.*       @@192.168.0.1

  在這一行中使用了syslog風格的設施和優先規定:設施*(發送到rsyslog程序的每一個事件)發送所有符合所有優先權的事件到中央日誌 主機。指示@@清楚指出,該日誌主機聽從TCP端口上接下來的信息。做爲選擇,如果你必須通過UDP發送信息,你可以使用@192.168.0.1。

  如果你想運用新的RELP解決方案,你可以在中央日誌主機上負載模塊,通過在其rsyslogd.conf上囊括以下命令行:

$ModLoad imrelp
$InputRELPServerRun 2514

  想要通過RELP發送信息,你需要在發送主機上添加以下命令:

*.*       :omrelp:192.168.0.1:2514

  注意,想要將它發送到RELP目標主機,需要使用一個無特權的數字,因爲沒有爲RELP協議預留專門端口。

  老式的syslog後臺程序只能通過UDP發送日誌信息。在新的rsyslog日誌後臺中,你可以在UDP、TCP和新的RELP協議中做選擇。使用TCP或RELP更好地保證了該日誌信息會到過目的地,兩者中的任一種都比以前使用方法構建的日誌環境要更爲安全。

 

http://linux.itwaka.com/safe/74527.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章