Ubuntu Syslog日志審計指南
Syslog是Ubuntu系統記錄系統事件、錯誤及用戶活動的核心機制,通過合理配置可實現全面的日志審計,幫助監控系統運行、檢測異常行為并滿足合規性要求。以下是具體實施步驟:
Ubuntu默認使用rsyslog
作為Syslog服務,首先確保其安裝并運行:
sudo apt-get update
sudo apt-get install rsyslog
sudo systemctl restart rsyslog
編輯/etc/rsyslog.conf
或創建自定義配置文件(如/etc/rsyslog.d/audit.conf
),將不同設施(facility)的日志分離到獨立文件,便于后續審計:
/var/log/audit.log
:auth,authpriv.* /var/log/audit.log
/var/log/syslog
:*.err /var/log/syslog
*.warn /var/log/syslog
*.* @remote_syslog_server:514 # UDP轉發
*.* @@remote_syslog_server:514 # TCP轉發(更可靠)
修改完成后,重啟rsyslog服務使配置生效:
sudo systemctl restart rsyslog
Syslog僅能記錄基礎日志,若需細粒度審計(如命令執行、文件訪問),需安裝auditd
(Linux審計框架):
sudo apt-get install auditd audispd-plugins
編輯/etc/audit/rules.d/audit.rules
,添加以下關鍵規則:
-a exit,always -F arch=b32 -S execve -k cmd_exec # 32位系統
-a exit,always -F arch=b64 -S execve -k cmd_exec # 64位系統
-a exit,always -F path=/usr/bin/sudo -F perm=x -k sudo_usage
sudo systemctl restart auditd
sudo augenrules --load # 加載新規則
cmd_exec
):sudo ausearch -k cmd_exec
sudo aureport -k -ts today -te now
為記錄sudo
命令的使用情況(關鍵操作),需單獨配置sudo日志:
使用visudo
命令編輯/etc/sudoers
,添加以下行:
Defaults logfile="/var/log/sudo.log"
Defaults log_input, log_output # 記錄輸入命令及輸出(可選,增強審計)
編輯/etc/rsyslog.conf
,添加以下行將sudo日志定向到獨立文件:
local2.debug /var/log/sudo.log
重啟rsyslog服務:
sudo systemctl restart rsyslog
Ubuntu默認使用logrotate
管理日志輪轉,編輯/etc/logrotate.d/rsyslog
(或/etc/logrotate.d/syslog
),調整輪轉策略(如保留7天日志,壓縮舊日志):
/var/log/syslog
{
rotate 7
daily
compress
missingok
notifempty
create 640 root adm
}
sudo chmod 640 /var/log/audit.log /var/log/sudo.log
sudo chown root:adm /var/log/audit.log /var/log/sudo.log
auditd
監控日志文件的完整性(如/var/log/audit.log
),添加以下規則:-w /var/log/audit.log -p wa -k audit_log_integrity
使用tail
命令實時查看審計日志(如/var/log/audit.log
):
sudo tail -f /var/log/audit.log
journalctl
journalctl _COMM=sshd
journalctl --since "1 hour ago"
安裝并配置Logwatch,生成每日/每周日志報告:
sudo apt-get install logwatch
sudo logwatch --output mail --mailto your_email@example.com --detail high # 發送郵件報告
對于大規模日志,可使用Elasticsearch+Logstash+Kibana(ELK)搭建可視化平臺:
通過以上步驟,可實現Ubuntu系統從基礎到深度的日志審計,覆蓋系統操作、用戶行為、命令執行等多個維度,為系統安全提供有力保障。