温馨提示×

Ubuntu Syslog与SELinux兼容性

小樊
39
2025-11-15 08:19:30
栏目: 智能运维

Ubuntu 上 Syslog 与 SELinux 的兼容性与实践

一 兼容性与默认策略

  • Ubuntu 上,常用的系统日志守护进程是 rsyslog;而 SELinux 属于可选的安全模块,默认并不随系统启用。若未启用 SELinux,rsyslog 以传统的文件权限与访问控制运行,不会受到 SELinux 策略限制。若后续在 Ubuntu 上手动启用 SELinux,需要为 rsyslog 配置相应的 SELinux 策略与布尔值,才能确保日志读写、网络端口监听与模块加载等正常运作。总体结论是:两者可以良好兼容,但需要按需启用与配置 SELinux 策略。

二 启用 SELinux 后的必要配置

  • 确认与切换 SELinux 状态
    • 查看状态:getenforce(返回 Enforcing/Permissive/Disabled
    • 临时切换:sudo setenforce 0|1(仅在当前会话生效)
    • 永久生效:编辑 /etc/selinux/configSELINUX= 项(重启后生效)
  • 端口与布尔值
    • 允许 rsyslog 使用网络端口(示例为 514):sudo semanage port -a -t syslogd_port_t -p tcp 514
    • 允许进程向 syslog 发送日志:sudo setsebool -P syslogd_can_send_syslog 1
  • 文件上下文
    • 确保日志文件具有正确的 SELinux 类型(如 syslog_log_t):sudo chcon system_u:object_r:syslog_log_t:s0 /var/log/syslog
  • 重启服务
    • 使策略与配置生效:sudo systemctl restart rsyslog
  • 说明
    • 以上命令需系统已安装 policycoreutils-python-utils(提供 semanage)与 selinux-basics 等工具;若未安装,请先 sudo apt-get install policycoreutils-python-utils selinux-basics。在 Permissive 模式下可以先验证策略是否影响功能,再切回 Enforcing

三 常见故障排查清单

  • 权限与类型
    • 检查日志文件权限与属主(如 /var/log/syslog 常见为 640 root adm),必要时修正:ls -l /var/log/syslogsudo chmod 640 /var/log/syslogsudo chown root:adm /var/log/syslog
    • 校验 SELinux 类型:ls -Z /var/log/syslog,必要时恢复:sudo chcon system_u:object_r:syslog_log_t:s0 /var/log/syslog
  • 服务与配置
    • 确认 rsyslog 运行:sudo systemctl status rsyslog;语法检查:sudo rsyslogd -N1
    • 远程发送示例:在 /etc/rsyslog.d/50-default.conf 添加 *.* @@remote_ip:514(TCP),保存后 sudo systemctl restart rsyslog
  • 网络与访问控制
    • 防火墙放行:UFW 示例 sudo ufw allow 514/tcpsudo ufw allow 514/udp
    • 若启用 SELinux,确认已放行端口与布尔值(见第二节)
  • 日志完整性
    • 排查 磁盘空间不足日志级别过高日志轮转配置不当应用未正确配置 syslog 等常见原因。

四 安全与运维建议

  • 最小权限与文件权限
    • 关键配置与日志文件建议 640,属主 root:adm;仅授予必要主体访问
  • 日志轮转
    • 使用 logrotate 管理大小与保留期,示例(/etc/logrotate.d/syslog):
      • /var/log/syslog { daily; missingok; rotate 7; compress; notifempty; create 640 root adm }
  • 传输安全
    • 远程传输优先 TCP/TLS,在 rsyslog/syslog-ng 中启用 TLS 加密,避免明文泄露
  • 访问控制
    • 通过 UFW/iptables 限制来源 IP 对 514 端口的访问,仅允许受信网络
  • 审计与监控
    • 结合 auditd 对日志文件与关键操作进行审计;定期巡检异常日志与策略告警。

0