我有一个我公司拥有的专有软件需要访问根级文件。我们将称之为它,/secfile因为它与安全/许可证相关。系统运行一个守护进程,将更新的信息写出到/secfile. 这个守护进程,如果被阻止更新/secfile,就会使有问题的许可证无效,因为它假定犯规。
如何强制 SELinux 允许驻留在 的守护进程/bin/secdaemon访问/secfile?
唯一需要访问(当前不受限制)的其他应用程序/secfile是/usr/bin/licensemanager.
好吧,最简单的方法是禁用 SELinux,但我不建议这样做:
setenforce 0
Run Code Online (Sandbox Code Playgroud)
或者您可以创建一个规则,以允许它写入、运行或任何它需要执行的操作,但目前已被阻止。为此,请检查您的系统日志文件并复制“拒绝”的行,它应该是这样的:
audit(...): avc: denied { write } for pid=27984 comm="httpd" name="httpd" dev=sda6 ino=307469 scontext=root:system_r:httpd_t:s0 tcontext=system_u:object_r:usr_t:s0 tclass=...
Run Code Online (Sandbox Code Playgroud)
复制它并运行以下命令:
audit2allow -M local << _EOF_
(paste the content)
_EOF_
Run Code Online (Sandbox Code Playgroud)
然后,运行:
semodule -i local.pp
Run Code Online (Sandbox Code Playgroud)
这将为它创建一个永久规则,因此您不需要禁用 SELinux。
| 归档时间: |
|
| 查看次数: |
7512 次 |
| 最近记录: |