Ubuntu下日志安全策略
导读:Ubuntu日志安全策略实施要点 一 基础架构与日志采集 使用 rsyslog 作为系统日志服务,确保安装并开机自启:sudo apt update && sudo apt install rsyslog &&am...
Ubuntu日志安全策略实施要点
一 基础架构与日志采集
- 使用 rsyslog 作为系统日志服务,确保安装并开机自启:
sudo apt update & & sudo apt install rsyslog & & sudo systemctl enable --now rsyslog。 - 启用 systemd-journald 做本地结构化日志,必要时持久化:
sudo mkdir -p /var/log/journal & & sudo systemctl restart systemd-journald。 - 关键日志路径与用途:
- /var/log/syslog:综合系统消息
- /var/log/auth.log:认证与 sudo 使用
- /var/log/audit/audit.log:内核级审计日志(auditd)
- 基本分类示例(写入
/etc/rsyslog.d/50-default.conf或自定义文件):auth,authpriv.* /var/log/auth.log*.* /var/log/sysloglocal0.* /var/log/myapp.log
修改后执行:sudo systemctl restart rsyslog。
二 访问控制与传输加密
- 文件与目录权限:
- 系统日志建议 640,属主 root:adm,如:
sudo chmod 640 /var/log/syslog /var/log/auth.log & & sudo chown root:adm /var/log/syslog /var/log/auth.log。 - 审计日志目录更严格:700,属主 root:adm:
sudo chmod 700 /var/log/audit & & sudo chown root:adm /var/log/audit。 - 需要细粒度授权时使用 ACL:
sudo setfacl -m g:adm:r /var/log/auth.log。
- 系统日志建议 640,属主 root:adm,如:
- 远程日志传输安全:
- 优先 TLS/SSL:生成证书(示例有效期 3650 天)
sudo openssl req -newkey rsa:2048 -x509 -days 3650 -keyout /etc/ssl/private/rsyslog.key -out /etc/ssl/certs/rsyslog.crt
- 在 rsyslog 配置启用 TLS,并仅开放必要端口;必要时禁用明文 UDP 514,改用 TCP/TLS。
- 优先 TLS/SSL:生成证书(示例有效期 3650 天)
- 网络访问控制:
- 用 UFW 限制来源网段访问 Syslog 端口:
sudo ufw allow from 192.168.1.0/24 to any port 514 proto udp - 在 rsyslog 中使用
AllowedSender明确允许的主机/网段。
- 用 UFW 限制来源网段访问 Syslog 端口:
三 完整性保护与审计追踪
- 日志完整性:
- 使用 GnuPG 对关键日志做签名:
gpg --detach-sign /var/log/syslog,定期校验签名是否被篡改。 - 部署 AIDE 做文件完整性基线校验,监控
/var/log与/var/log/audit的异常变更。
- 使用 GnuPG 对关键日志做签名:
- 细粒度审计(auditd):
- 安装并启用:
sudo apt install auditd audispd-plugins & & sudo systemctl enable --now auditd - 常用规则(写入
/etc/audit/rules.d/audit.rules):- 监控进程执行:
-a exit,always -F arch=b64 -S execve -S execveat -k executed-process - 监控特权命令:
-a exit,always -F path=/usr/bin/sudo -F perm=x -k sudo_usage - 监控敏感文件:
-w /etc/passwd -p rwxa -k passwd_access
- 监控进程执行:
- 查询与报表:
sudo ausearch -k executed-process、sudo aureport -k。
- 安装并启用:
四 存储保留与轮转策略
- 系统日志轮转(示例
/etc/logrotate.d/rsyslog):- 保留 7 天、按日轮转、压缩旧日志、创建新文件时设 640 root:adm:
/var/log/syslog { daily; rotate 7; compress; missingok; notifempty; create 640 root adm; postrotate /usr/lib/rsyslog/rsyslog-rotate ; endscript }
- 保留 7 天、按日轮转、压缩旧日志、创建新文件时设 640 root:adm:
- 审计日志轮转(示例
/etc/logrotate.d/audit):- 保留 30 天,压缩并通知 rsyslog 重新打开文件:
/var/log/audit/*.log { daily; rotate 30; compress; missingok; notifempty; sharedscripts; postrotate /usr/lib/rsyslog/rsyslog-rotate ; endscript }
- 保留 30 天,压缩并通知 rsyslog 重新打开文件:
- 容量与告警:设置监控告警(如磁盘使用率阈值),避免因日志占满导致服务异常。
五 监控告警与合规检查
- 实时监控与告警:
- 在 rsyslog 中基于模式匹配触发告警,例如统计 5 次/ 5 分钟的失败登录并写入告警文件或发送邮件。
- 使用 Logwatch 生成每日摘要;结合 fail2ban 对暴力登录进行自动封禁。
- 集中化与可视化:
- 小规模可用 ELK Stack(Elasticsearch+Logstash+Kibana) 或 Graylog 做检索与可视化;大规模建议引入消息队列与缓冲降低丢失风险。
- 合规与安全基线:
- 使用 Lynis 进行系统安全基线检查:
sudo apt install lynis & & sudo lynis audit system - 使用 OpenSCAP 做漏洞与配置评估:
sudo apt install libopenscap8后按需扫描。
- 使用 Lynis 进行系统安全基线检查:
- 应用日志补充建议:
- 以非 root 运行应用;日志文件设 640 并归属应用用户与 adm 组;对含敏感信息的应用日志实施 GPG 加密归档或落盘即删策略。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Ubuntu下日志安全策略
本文地址: https://pptw.com/jishu/783703.html
