【发布时间】:2016-05-18 17:39:14
【问题描述】:
我的几个文件的 SELinux 上下文在我的 openstack-swift 设置中遇到了一些问题
设置详情:
一个守护进程正在运行具有以下 SELinux 上下文的 swift-object-replicator
system_u:system_r:swift_t:s0 swift ... /usr/bin/python /usr/bin/swift-object-replicator /etc/swift/object-server.conf
此守护程序定期调用脚本。该脚本创建的文件具有以下 SELinux 上下文
system_u:object_r:swift_var_cache_t:s0 /var/cache/swift/object.recon
哪个是正确的!!
问题
如果我以“root”身份从终端运行相同的脚本(该守护程序在内部调用该脚本),则 object.recon 文件 SELinux 上下文修改如下-rw-------. swift swift unconfined_u:object_r:var_t:s0 /var/cache/swift/object.recon
然后我开始在该守护进程的日志文件中看到错误消息
知道为什么上下文会发生变化以及如何保留它,即使我希望从终端触发脚本
【问题讨论】:
-
你无法阻止它。 SElinux 就是为了做到这一点。另一方面,尝试为它创建一个目标策略。
-
@alvits 是的,我就是这么想的。那会是什么政策?可以给我详细信息吗
-
我们有一个
/var/cache/swift(/.*)? regular file system_u:object_r:swift_var_cache_t:s0类型的策略规则,但是如何执行它。 Restorecon 修复了一些问题,但只是暂时的,直到有人再次从终端点击命令:( -
SElinux 是强制执行还是允许执行?
标签: linux selinux openstack-swift