14.2. 类型
SELinux 目标策略中用于提供高级进程隔离的主要权限控制方法是 Type Enforcement。所有文件和进程都设置了类型标签:type 为进程定义 SELinux 域,以及文件的 SELinux 类型。SELinux 策略规则定义类型如何相互访问,无论是访问某一类型的域还是访问其他域的域。只有在存在允许访问的特定 SELinux 策略规则时才允许访问。
使用
samba_share_t
类型标记文件,以允许 Samba 共享它们。仅标记您创建的文件,且不用 samba_share_t
类型重新标记系统文件:可以启用布尔值以共享此类文件和目录。SELinux 允许 Samba 写入使用 samba_share_t
类型标记的文件,只要 /etc/samba/smb.conf
文件相应地设置了 Linux 权限。
samba_etc_t
类型用于 /etc/samba/
目录中的特定文件,如 smb.conf
。不要使用 samba_etc_t
类型手动标记文件。如果这个目录中的文件没有正确标记,请以 root 用户身份输入 restorecon -R -v /etc/samba 命令,以将这些文件恢复到其默认上下文。如果 /etc/samba/smb.conf
没有标记为 samba_etc_t
类型,则启动 Samba 服务可能会失败,并且可能会记录 SELinux 拒绝消息。以下是使用 httpd_sys_content_t
类型标记 /etc/samba/smb.conf
时的拒绝信息示例:
setroubleshoot: SELinux is preventing smbd (smbd_t) "read" to ./smb.conf (httpd_sys_content_t). For complete SELinux messages. run sealert -l deb33473-1069-482b-bb50-e4cd05ab18af
setroubleshoot: SELinux is preventing smbd (smbd_t) "read" to ./smb.conf (httpd_sys_content_t). For complete SELinux messages. run sealert -l deb33473-1069-482b-bb50-e4cd05ab18af