加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

samba – SELinux创建自定义角色

发布时间:2020-12-16 03:55:05 所属栏目:安全 来源:网络整理
导读:我有一个通过Samba共享的文件夹,以及一个Docker容器,我希望通过将它作为卷添加到Docker容器来访问所述文件夹(是的,我知道这不是可移植的). SELinux阻止容器访问该文件夹,因为该文件夹及其内容标记为samba_share_t,而不是svirt_sandbox_file_t 我知道smbd_t域

我有一个通过Samba共享的文件夹,以及一个Docker容器,我希望通过将它作为卷添加到Docker容器来访问所述文件夹(是的,我知道这不是可移植的).

SELinux阻止容器访问该文件夹,因为该文件夹及其内容标记为samba_share_t,而不是svirt_sandbox_file_t

我知道smbd_t域可以访问许多SELinux标签(例如httpd_sys_content_t,虽然sesearch -s smbd_t –allow提供了完整列表),但是svirt_sandbox_file_t不是其中之一.

我看到了解决这个问题的几种方法:

>通过网络从容器访问samba共享(不可取,因为这需要在容器中安装samba,并且存在网络开销)
>将文件夹及其内容重新标记为svirt_sandbox_file_t(这会阻止Samba访问该文件夹)
>将文件夹及其内容重新标记为public_content_rw_t(但也可以访问许多其他我不想访问此文件夹的服务)
>创建一个策略,让svirt_lxc_net_t访问samba_share_t标签(由audit2allow生成,但这使得任何容器都可以访问标记为samba_share_t的任何文件/文件夹)

我能想到的另一个选择是创建我自己的SELinux角色,它有自己的标签,只能访问Samba和svirt(我之前没有做过,但我愿意尝试).

我在这里错过了什么吗?有更简单的方法吗?

最佳答案
我会去添加规则以允许samba写入svirt_sandbox_file_t.因为您希望允许samba将内容上载到容器. samba是否只需要阅读内容,然后只需添加允许规则即可实现.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读