配置 SELINUX 以允许记录到 /var/log 之外的文件

配置 SELINUX 以允许记录到 /var/log 之外的文件

我有一个守护进程,它使用 syslog(3) 将日志记录到不是 /var/log 后代的文件中。目前,这需要禁用 SELINUX。如何配置已启用的 SELINUX 以允许此日志记录?

我是 SELINUX 新手。任何指导或建议都将不胜感激。

答案1

您必须更改日志目录的上下文。例如,您想登录到 /mnt/extranal/log 而不是 /var/log。

因此,您必须将 /mnt/external/log 的 SELinux 类型设置为 var_log_t,就像 /var/log 已经具有的那样。

查看

ls -Z /var

有结果

drwxr-xr-x. root root system_u:object_r:var_log_t:s0   log

准备日志目录

mkdir /mnt/external/log

准备 SELinux 标记 FS 的规则

semanage fcontext -a -t var_log_t /mnt/external/log

调用目录的重新标记

restorecon -v /mnt/external/log

如果你已经完成了,请检查

ls -Z /mnt/external

有结果

drwxr-xr-x. root root system_u:object_r:var_log_t:s0   log

如果您不使用 MLS/MCS 政策,那就全部了。

查看更多详情

https://docs.fedoraproject.org/en-US/Fedora/12/html/Security-Enhanced_Linux/sect-Security-Enhanced_Linux-Working_with_SELinux-SELinux_Contexts_Labeling_Files.html

https://docs.fedoraproject.org/en-US/Fedora/11/html/Security-Enhanced_Linux/sect-Security-Enhanced_Linux-SELinux_Contexts_Labeling_Files-Persistent_Changes_semanage_fcontext.html

相关内容