SELinux 中允许文件夹标签的类型字段有多种类型

SELinux 中允许文件夹标签的类型字段有多种类型

我是一名 Ubuntu/Debian 用户,但是在 softraid/fakeraid 系统上安装 Ubuntu 时遇到了麻烦,因此我选择了 CentOS 5.6。

我也在一家小型网络开发公司工作,我们需要通过 samba/smb 共享我们测试服务器的 html/httpd 文件,但也允许 apache 托管它们。

所以我想知道我是否可以将我们的文件设置为 samba 和 httpd 类型?

就像是,

/usr/sbin/semanage fcontext -a -t samba_share_t,httpd_sys_content_t "/var/www/html(/.*)?"

否则我将不得不将 SELinux 转为宽容模式,而这不是我想要做的。

答案1

我刚刚意识到我完全误读了你的问题:)

如果您想允许 Samba 读取/var/www/html,即httpd_sys_content_t,您应该不会有问题。我不是 Samba 专家,但据我所知,Samba 在域中运行smbd_t,所以您应该没问题:

 # sesearch -s smbd_t --allow | grep httpd_sys_content
 allow smbd_t httpd_sys_content_t : file { ioctl read getattr lock }; 
 allow smbd_t httpd_sys_content_t : file { ioctl read write create getattr setattr lock append unlink link rename }; 
 allow smbd_t httpd_sys_content_t : file { ioctl read write create getattr setattr lock append unlink link rename }; 
 allow smbd_t httpd_sys_content_t : dir { ioctl read getattr lock search }; 
 allow smbd_t httpd_sys_content_t : dir { ioctl read write create getattr setattr lock unlink link rename add_name remove_name reparent search rmdir }; 
 allow smbd_t httpd_sys_content_t : dir { ioctl read write create getattr setattr lock unlink link rename add_name remove_name reparent search rmdir }; 

这表示 Samba 被允许读取httpd_sys_content_t目录和文件。/var/www/html httpd_sys_content_t。您已经尝试过了吗?

答案2

SHARING FILES
   If you want to share files with multiple domains (Apache,  FTP,  rsync,
   Samba),  you can set a file context of public_content_t and public_content_rw_t.
   These context allow any of the above domains  to  read  the
   content.   If  you want a particular domain to write to the public_con‐
   tent_rw_t   domain,   you   must   set   the    appropriate    boolean.
   allow_DOMAIN_anon_write.  So for samba you would execute:

       setsebool -P allow_smbd_anon_write=1

例如:

semanage fcontext -a -t public_content_rw_t '/var/www/html(/.*)?'
restorecon -R /var/www/html
setsebool -P allow_smbd_anon_write 1

对于 httpd:

setsebool -P allow_httpd_anon_write=1

看:http://fedoraproject.org/wiki/SELinux/apache

相关内容