如何将SELinux标签分配给带有semanage的符号链接,以便在重新标记之后它仍然存在?

如何将SELinux标签分配给带有semanage的符号链接,以便在重新标记之后它仍然存在?,第1张

概述我的apache DocumentRoot / var / www是另一个路径的符号链接.目标具有适当的文件上下文标签(httpd_sys_content_t),以便apache可以在启用SE Linux的情况下读取它.但是,符号链接本身标有var_t. [root@localhost var]# ls -lZlrwxrwxrwx. root root unconfined_u:object_r 我的apache documentRoot / var / www是另一个路径的符号链接.目标具有适当的文件上下文标签(httpd_sys_content_t),以便apache可以在启用SE Linux的情况下读取它.但是,符号链接本身标有var_t.
[root@localhost var]# ls -lZlrwxrwxrwx. root root unconfined_u:object_r:var_t:s0 www -> /srv/www

我需要用httpd_sys_content_t重新标记符号链接.

最初使用-h选项运行chcon似乎有效:

[root@localhost var]# chcon -h -t httpd_sys_content_t /var/www[root@localhost var]# ls -lZlrwxrwxrwx. root root unconfined_u:object_r:httpd_sys_content_t:s0 www -> /srv/www

然而,这不再存在于重新标记中:

[root@localhost var]# restorecon -Rv .restorecon reset /var/www context system_u:object_r:httpd_sys_content_t:s0->system_u:object_r:var_t:s0

使用semanage不会重新链接链接本身;只是目标:

[root@localhost var]# semanage fcontext -a -t httpd_sys_content_t /var/www[root@localhost var]# restorecon -Rv .[root@localhost var]# ls -lZlrwxrwxrwx. root root unconfined_u:object_r:var_t:s0 www -> /srv/www

semanage没有-h选项.

如何设置链接本身的标签,以便在重新标记后保留为httpd_sys_content_t?

解决方法 我想到了:

semanage有一个选项-f,它允许你指定模式字段中显示的文件类型ls(d代表目录,– 代表常规文件,l代表链接).
使用-f -l时,链接本身是目标.

[root@localhost var]# semanage fcontext -f -l -a -t httpd_sys_content_t /var/www[root@localhost var]# restorecon -Rv .restorecon reset /var/www context system_u:object_r:var_t:s0->system_u:object_r:httpd_sys_content_t:s0

请参见semanage-fcontext手册页.

总结

以上是内存溢出为你收集整理的如何将SELinux标签分配给带有semanage的符号链接,以便在重新标记之后它仍然存在?全部内容,希望文章能够帮你解决如何将SELinux标签分配给带有semanage的符号链接,以便在重新标记之后它仍然存在?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/1043701.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存