![SELinux 在删除后阻止 pam_oddjob_mkhomedir 重新创建主目录](https://linux22.com/image/703577/SELinux%20%E5%9C%A8%E5%88%A0%E9%99%A4%E5%90%8E%E9%98%BB%E6%AD%A2%20pam_oddjob_mkhomedir%20%E9%87%8D%E6%96%B0%E5%88%9B%E5%BB%BA%E4%B8%BB%E7%9B%AE%E5%BD%95.png)
我有一台连接到 LDAP 的 RedHat 7 服务器,应该会自动创建主文件夹。根据 RedHat 的建议,我使用pam_oddjob_mkhomedir.so
。如果用户从未登录系统,一切都会正常运行。
如果主文件夹已被删除,则会出现问题,它们将被视为此系统上的临时区域。删除后,不会重新创建主文件夹,用户将收到
Could not chdir to home directory /home/users/username: No such file or directory
有人可以解释一下吗?
更新:我发现 SELinux 是导致这种情况的原因。如果 SELinux 处于宽容模式,一切都会正常工作。我不想禁用 SELinux,如果能帮助我正确配置它,我将不胜感激。
另一更新:
在 /var/log/audit/audit.log 中找到一些相关日志
type=AVC msg=audit(1493820202.276:178): avc: denied { add_name } for pid=2631 comm="mkhomedir" name="robot" scontext=system_u:system_r:oddjob_mkhomedir_t:s0-s0:c0.c1023 tcontext=system_u:object_r:nfs_t:s0 tclass=dir
type=AVC msg=audit(1493820202.276:178): avc: denied { create } for pid=2631 comm="mkhomedir" name="robot" scontext=system_u:system_r:oddjob_mkhomedir_t:s0-s0:c0.c1023 tcontext=system_u:object_r:nfs_t:s0 tclass=dir
type=AVC msg=audit(1493820202.276:179): avc: denied { setattr } for pid=2631 comm="mkhomedir" name="robot" dev="0:41" ino=53873787 scontext=system_u:system_r:oddjob_mkhomedir_t:s0-s0:c0.c1023 tcontext=system_u:object_r:nfs_t:s0 tclass=dir
type=AVC msg=audit(1493820202.277:180): avc: denied { write open } for pid=2631 comm="mkhomedir" path="/nfs-server/host1/home/users/robot/.bash_logout" dev="0:41" ino=53873788 scontext=system_u:system_r:oddjob_mkhomedir_t:s0-s0:c0.c1023 tcontext=system_u:object_r:nfs_t:s0 tclass=file