我有一个包含 OpenLDAP(身份验证和 NFS 挂载选项)、NFS 服务器、AutoFS(用于挂载 NFS 主目录)和所需 PAM 插件的工作设置。
除 mkhomedir PAM 插件外,一切运行正常,由于第一次登录时没有自动创建主目录,因此该插件无法正常工作。
错误信息如下:
Aug 26 11:21:55 SERVER1 sshd[3981]: pam_mkhomedir(sshd:session): unable to create directory /home/test2: No such file or directory
NFS/LDAP 服务器上没有任何内容。
我的/etc/pam.d/common-session
文件:
session required pam_unix.so
session required pam_limits.so
session optional pam_ldap.so
session required pam_mkhomedir.so skel=/etc/skel umask=0022
我的/etc/auto.master
文件:
/home ldap://10.0.0.2/ou=export,dc=XXXX,dc=local --timeout=5
这两个文件都在客户端。
有任何想法吗?
问候,
答案1
此类设置有两种方法:
您有一个通过 nfs 共享的主目录。在这种情况下,您可以使用 AutoFS 方法在访问时将主目录挂载到 /home 下(就像您将 /home 放入 auto.master 中一样)
您没有共享主目录,并且希望用户在登录的每个服务器上都有一个主目录。在这种情况下,您需要 pam_mkhomedir 在首次登录时创建目录。
似乎您混合了这两种方法,通过请求 autofs 挂载 /home/ 并在登录时创建主目录。
您应该选择一种方法并坚持使用。如果您希望主目录自动挂载,则必须与用户一起创建它,以便用户可以通过 NFS 使用它。
您可以尝试通过使 /home 自动挂载来合并这两种方法。由于这意味着您必须在 / 上运行 AutoFS,因此让 /home/users 自动挂载可能更好。然后您可以让 pam_mkhomedir 在 /home/users/ 处创建一个主目录