Active Directory 认证用户的主目录和 shell

Active Directory 认证用户的主目录和 shell

我已经成功配置了 sssd 并且可以通过 AD 凭据通过 ssh 进入系统,我所缺少的是创建主目录并将 bash 设置为 shell。

我的假设是,如果我登录到一个尚无本地 Linux 帐户但具有有效 AD 帐户的系统,则在用户第一次登录时会创建一个主目录,并按照以下定义设置适当的 shell /etc/sssd/sssd.conf

override_homedir = /home/%u
default_shell = /bin/bash

我也跑过

authconfig --enablesssd --enablesssdauth --enablemkhomedir --update

我遗漏了什么或者我对现有配置做出了错误的假设?

我想避免使用 Windows 中已弃用的 Unix 身份管理功能。

答案1

这个问题已通过移动条目解决

override_homedir = /home/%u
default_shell = /bin/bash

从 sssd.conf 的 [sssd] 部分到 [domain/lab.local]

答案2

这个等式有两个部分。一个是 SSSD,特别是名称服务切换接口。该部分报告系统上的主目录是什么,您可以使用“getent passwd $username”对其进行测试。只要该命令为您提供准确的答案,那么 SSSD 就可以正常工作。

另一部分实际上是创建主目录。我建议使用 oddjob 和 pam_oddjob_mkhomedir,而不是旧的 pam_mkhomedir。根据我的经验,它与 SELinux 配合得更好。

查看 /var/log/secure 以查找来自 PAM 模块的错误消息。

答案3

请先看这个帖子:关于 Linux 服务器的 Active Directory 身份验证的常识?

对于 RHEL/CentOS 6.x 系统,我这样做:

  • 使用正确的初始 SSSD 设置进行 Authconfig。
  • 修改 sssd.conf 以满足需求。
  • 修改并配置oddjobd。

对于 authconfig,类似于:

authconfig --enablesssd --ldapserver=ldap://dc1.ad.blahblah.com --ldapbasedn="dc=ad,dc=blahblah,dc=com" --enablerfc2307bis --enablesssdauth --krb5kdc=dc1.ad.blahblah.com --krb5realm=AD.BLAHBLAH.COM --disableforcelegacy --enablelocauthorize --enablemkhomedir --updateall

  • 我的简单 sssd.conf 看起来像这样:http://pastebin.com/Aa2XsYhh- 修改配置后重新启动sssd服务。

  • 然后我安装oddjob-mkhomedir: yum install oddjob-mkhomedir- 您可以调整主目录权限以适应/etc/oddjobd.conf.d/oddjobd-mkhomedir.conf

  • 确保ssd 的零工服务设置为在启动时启动。

这就是所需要的全部内容了。

答案4

当我通过 SSHD 登录时,它在 CentOS 7 上对我有用。创建主目录的位置是 PAM 一部分的“会话”管理组。

来自 pam(8) 手册页:

    session - this group of tasks cover things that should be done prior to a service being given and after it is
   withdrawn. Such tasks include the maintenance of audit trails and the mounting of the user's home directory.
   The session management group is important as it provides both an opening and closing hook for modules to
   affect the services available to a user.

/etc/pam.d/password-auth会发现这一行:sessionoptionalpam_oddjob_mkhomedir.soumask=0077

负责主目录的创建。

确保您已安装并启用该包oddjob-mkhomedir

相关内容