在Ubuntu系统中,Syslog服务是用于收集、处理和转发系统日志的重要工具,通过它可以记录系统和应用发生的事件,帮助排错和分析使用。以下是关于Ubuntu syslog日志审计实践的一些关键步骤和最佳实践:
sudo apt-get update sudo apt-get install rsyslog /etc/rsyslog.conf。sudo nano /etc/rsyslog.conf /var/log/syslog 文件中。*.err /var/log/syslog *.warn /var/log/syslog *.* @remote_syslog_server:514 sudo systemctl restart rsyslog /etc/sudoers 文件,可以记录使用sudo命令的用户操作。sudo visudo 在 /etc/sudoers 文件中添加以下行:
Defaults logfile /var/log/sudo.log /etc/rsyslog.conf 文件中添加以下行,将sudo日志记录到指定文件。local2.debug /var/log/sudo.log sudo systemctl restart rsyslog sudo apt update && sudo apt upgrade sudo ufw allow ssh sudo ufw enable sudo apt install logwatch sudo logwatch --output mail journalctl 命令查看日志: journalctl 是一个用于查询和显示systemd日志的命令行工具。# 查看所有日志 journalctl # 查看特定服务的日志 journalctl -u ssh # 查看特定时间段的日志 journalctl --since "2023-08-01" --until "2023-08-02" # 实时查看日志 journalctl -f grep 命令搜索特定关键词:grep "error" /var/log/syslog awk、sed 等文本处理工具进行高级分析:grep "error" /var/log/syslog | awk '{print 1}' | cut -d'-' -f1 | sort | uniq -c | sort -nr 为了防止日志文件过大,可以定期备份和清理日志文件。
sudo cp /var/log/audit/audit.log /var/log/audit/audit.log.bak logrotate 工具来自动清理旧日志。sudo nano /etc/logrotate.d/audit 添加以下内容:
/var/log/audit/*.log { daily rotate 7 missingok notifempty compress delaycompress sharedscripts } 然后重启 logrotate 服务:
sudo systemctl restart logrotate 通过以上步骤,你可以在Ubuntu系统中配置Syslog服务以实现日志审计,并采取相应的安全策略和加固措施,提高系统的整体安全性。