我在服务器上启用了 SELinux,但 httpd 服务器(nginx 和 phusion Passenger)无法读取应用程序的目录(/home/app
),并显示以下消息:
#============= httpd_t ==============
#!!!! WARNING: 'home_root_t' is a base type.
#!!!! The file '/home/app/config.ru' is mislabeled on your system.
#!!!! Fix with $ restorecon -R -v /home/app/config.ru
allow httpd_t home_root_t:file { getattr open read };
我想保持 SELinux 处于开启状态,但启用此功能。
- 我该使用什么命令来重新标记
/home/app
以便 httpd 可以读取它? - 重启后还能继续吗?
- 我希望它具有粘性,这样如果我
rm /home/app
将其他内容放在那里(例如应用程序升级),则无需重新标记它。 - 当然它也应该适用于
/home/app/sub
现有的和将来的子目录()。 - 最后,有日志文件,我需要对它有读写权限。如有必要,
/home/app/log
我愿意允许对整个文件有读写权限。/home/app
如何配置 SELinux 以与我的自定义应用程序配合使用?