1
BOYPT 2014-12-10 12:36:39 +08:00
drwxr-xr-x. root root unconfined_u:object_r:user_home_dir_t:s0 ..
这不就有问题了嘛。 apapche要有这个目录的写权限,因为不单只是access_log error_log。 |
2
digimoon OP @BOYPT 但是这个是上一级目录吧?就是/home/log这个目录,我要将log放在/home/log/apache这个目录下啊,也需要更改上一级的么?
|
3
digimoon OP @BOYPT 果然我往 /home/log 这个目录添加了 var_log_t 后就能正常启动了
那么如果以后再遇到类似的情况的话,要怎么样才能知道程序要读哪个目录和需要哪个 tage 呢? 光看这错误信息的话我也不知道要往上一级目录加 var_log_t 啊 |
4
BOYPT 2014-12-10 17:40:40 +08:00 1
@digimoon 配置selinux要看audit的log,你没贴出来我也是猜的。
/var/log/audit/audit.log selinux对每个权限的请求,允许和拒绝之类的都记录在这,你看了就知道了。 |
5
digimoon OP @BOYPT 我刚刚将 /home/log 目录的标签弄回原来的然后再触发一下错误生成 audit 的 log,硬是没看懂应该怎么做,里面的那建议似乎也没提示要在 /home/log 这里加 var_log_t,能解释一下怎么看这 log 和排错么?
https://gist.github.com/moondigi/3642f71fbf5b5a06f8c2 |
6
BOYPT 2014-12-12 10:29:52 +08:00
根据RH的文档,是触发了audit的log后,用audit2allow根据log生成允许指令的。
http://wiki.centos.org/HowTos/SELinux 7. Creating Custom SELinux Policy Modules with audit2allow |
7
digimoon OP @BOYPT 这个我看过的,生成的那些就是这个 log 里面建议的做法例如 setsebool -P httpd_enable_homedirs 1 这样的,如果用了后就变 /home 目录下全部能读了,不是很精确的设法
|