SUSE Linux 系統日誌管理
在 SUSE Linux(包含 openSUSE 與 SLE)中,系統日誌對於監控與診斷系統運作至關重要。本指南將介紹 journalctl
、rsyslog
與 logrotate
在 SUSE 上的使用,並提供實際操作示例。
目錄
系統日誌概述
- SUSE Linux 使用
systemd-journald
來收集與管理日誌。 - 傳統的 rsyslog 仍可用於集中式日誌與自訂路由。
- 日誌資料存放於:
/var/log/journal/
:持久化的二進制日誌/var/log/
:傳統文字日誌,如messages
、secure
使用 journalctl 管理日誌
查看所有系統日誌
sudo journalctl
根據時間範圍篩選
# 過去 1 小時
sudo journalctl --since "1 hour ago"
# 指定日期範圍
sudo journalctl --since "2025-06-01" --until "2025-06-19 12:00"
根據單一服務篩選
sudo journalctl -u sshd.service
sudo journalctl -u docker.service --since "2 days ago"
即時監控日誌
sudo journalctl -f
限制顯示行數
sudo journalctl -n 50
清理日誌 (釋放磁碟空間)
sudo journalctl --vacuum-size=200M
sudo journalctl --vacuum-time=3days
啟用持久化日誌
sudo mkdir -p /var/log/journal
sudo systemctl restart systemd-journald
傳統日誌管理 (rsyslog)
安裝並啟用 rsyslog
sudo zypper install rsyslog -y
sudo systemctl enable --now rsyslog
檢查 rsyslog 狀態
systemctl status rsyslog
配置文件位置
- 主配置:
/etc/rsyslog.conf
- 額外配置:
/etc/rsyslog.d/*.conf
範例:將 SSH 日誌記錄到專用檔案
在 /etc/rsyslog.d/50-sshd.conf
中新增:
:programname, isequal, "sshd" /var/log/ssh.log
& stop
重啟:
sudo systemctl restart rsyslog
發送日誌到遠端伺服器
在 /etc/rsyslog.d/60-remote.conf
中:
*.* @@192.168.1.100:514
重啟:
sudo systemctl restart rsyslog
日誌輪轉 (logrotate)
查看預設設定
cat /etc/logrotate.conf
ls /etc/logrotate.d/
手動執行輪轉
sudo logrotate -vf /etc/logrotate.conf
自訂輪轉:範例 /etc/logrotate.d/custom
/var/log/custom.log {
daily
rotate 7
compress
delaycompress
missingok
notifempty
create 0640 root root
}
日誌分析與監控
grep 過濾
# 系統錯誤
grep -i "error" /var/log/messages
# SSH 失敗嘗試
grep "Failed password" /var/log/secure
使用 ausearch 與 audit2why (若啟用 auditd)
sudo zypper install audit -y
sudo ausearch -m avc -ts today | audit2why
安裝 fail2ban 監控 SSH
sudo zypper install fail2ban -y
sudo systemctl enable --now fail2ban
sudo fail2ban-client status sshd
產生日誌報告(使用 logwatch)
sudo zypper install logwatch -y
sudo logwatch --detail High --mailto admin@example.com --range yesterday
結語
本文介紹了 SUSE Linux 上的日誌管理方法,涵蓋 journalctl
、rsyslog
、logrotate
,以及常見的日誌分析工具。透過這些技巧,您可以有效監控與維護系統日誌,提升伺服器安全與穩定性。