Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> 電腦軟體教學 >> 伺服器技術 >> 關於伺服器

Linux 集中式系統日誌伺服器部署指南:rsyslog 接收多主機日誌、規則過濾與 TLS 加密傳輸

編輯:關於伺服器

為何需要集中日誌伺服器?

  • 故障排查與安全審計:單一入口檢視所有主機事件,關鍵時刻 (入侵、崩潰) 日誌不會隨受害主機銷毀。
  • 合規需求:集中保存、備份、審計日誌 (PCI-DSS、GDPR、ISO 27001)。
  • 運維效率:統一分析、告警、報表 (ELK/Graylog/Splunk 上游來源)。

部署架構

  • 日誌伺服器 (Central Log Server): 硬化部署、磁碟加密、獨立網段、嚴格防火牆。
  • 日誌客戶端 (Log Clients): 所有受管主機 (Linux/Windows/網路設備) 轉發日誌至中央伺服器。

中央伺服器配置 (rsyslog v8+,Ubuntu/RHEL/CentOS 通用)

  1. 編輯 /etc/rsyslog.conf,檔案最前端 載入網路模組:
module(load="imtcp")
module(load="imudp")

input(type="imtcp" port="10514")
input(type="imudp" port="514")
  1. 定義儲存規則 (在模組載入後、本地規則前):
# 依來源 IP 存入獨立檔案
if $fromhost-ip == '192.168.0.2' then /var/log/192.168.0.2.log
& stop

# 依網段群組存入
if $fromhost-ip startswith '192.168.' then /var/log/192.168.log
& stop

# 預設落入本地處理流程 (local rules 之後)

關鍵: & stop (舊版 & ~) 表示停止後續規則處理,避免重複寫入本地檔案。

  1. 重啟服務生效:
    systemctl restart rsyslog (或 service rsyslog restart)。

客戶端配置 (發送端)

  1. 編輯 /etc/rsyslog.conf 檔案最前端新增:
*.* @@192.168.0.1:10514

說明:*.* 所有設施/優先級,@@ 表示 TCP (可靠),@ 為 UDP。目標 IP 為中央伺服器,埠 10514 (TCP) 或 514 (UDP)。

  1. 重啟客戶端 rsyslog:systemctl restart rsyslog。

進階:TLS 加密傳輸 (防止日誌竄改/洩露)

  1. 中央伺服器產生憑證:
    openssl req -new -x509 -days 3650 -nodes -out /etc/rsyslog/ca.pem -keyout /etc/rsyslog/ca.key
  2. 伺服器端 rsyslog.conf 新增:
global(
  DefaultNetstreamDriver="gtls"
  DefaultNetstreamDriverCAFile="/etc/rsyslog/ca.pem"
  DefaultNetstreamDriverCertFile="/etc/rsyslog/server-cert.pem"
  DefaultNetstreamDriverKeyFile="/etc/rsyslog/server-key.pem"
)
input(type="imtcp" port="10514" StreamDriver.Name="gtls" StreamDriver.Mode="1" StreamDriver.AuthMode="x509/name")
  1. 客戶端同步 CA 憑證 (ca.pem),配置:
global(
  DefaultNetstreamDriver="gtls"
  DefaultNetstreamDriverCAFile="/etc/rsyslog/ca.pem"
)
action(type="omfwd" Target="192.168.0.1" Port="10514" Protocol="tcp"
       StreamDriver="gtls" StreamDriverMode="1" StreamDriverAuthMode="x509/name")

自動化部署建議

  • 使用 Ansible/Puppet/Chef/SaltStack 將上述配置推送至所有客戶端,確保一致性。
  • 中央伺服器配合 Logrotate 設定日誌輪轉、壓縮、保留期 (如保留 1 年)。
  • 接入 Elasticsearch + Logstash + Kibana (ELK) 或 Graylog 實現全文搜尋、儀表板、告警。

防火牆提醒

中央伺服器與客戶端間防火牆必須開放 TCP 10514 (建議) 或 UDP 514。

Copyright © Windows教程網 All Rights Reserved