Winbind/AD:具有相同 AD 用户名的本地用户

Winbind/AD:具有相同 AD 用户名的本地用户

我们正准备将 Winbind/Samba 添加到一些 CentOS 服务器上。UNIX 身份管理正在我们的 DC 上运行,到目前为止测试良好。有一种情况我遇到了麻烦,我确信它已在 /etc/pam.d/system-auth 中使用 UID 范围解决。我无法确定需要哪些具体行。以下是该情况:

  • 我们通过 Puppet 部署了三个本地用户;当 DC 发生故障时,他们必须能够登录。他们必须是纯本地用户。
  • 这些用户的本地用户名与其 AD 对应用户名相同(例如,jsmith 是 CentOS 本地用户的名称,而 jsmith 也是同一用户的 AD 用户名)
  • 当 jsmith 登录时,它需要先在本地查找该用户。
  • 本地用户通常 > UID 500,而我们的 AD/Winbind 用户 > UID 10000。

答案1

我有一个 /etc/pam.d/system-auth,它设置了本地用户首先进行身份验证,然后返回到 kerberos (pam_krb5.so)。我将在这里提供 pam_krb5.so 替换为 pam_winbind.so,以便为您提供一些入门知识。这是几年前拼凑起来的,我记得我们花了一些时间对其进行改进,才让它正常工作。

account     required      pam_unix.so broken_shadow
account     sufficient    pam_localuser.so
account     sufficient    pam_succeed_if.so uid < 500 quiet
account     [authinfo_unavail=ignore default=bad success=ok user_unknown=ignore] pam_winbind.so
account     required      pam_permit.so


password    requisite     pam_cracklib.so try_first_pass retry=3
password    sufficient    pam_unix.so md5 shadow nullok try_first_pass use_authtok
password    sufficient    pam_winbind.so use_authtok
password    required      pam_deny.so

session     optional      pam_keyinit.so revoke
session     required      pam_limits.so
session     optional      pam_mkhomedir.so umask=0077
session     [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
session     required      pam_unix.so
session     optional      pam_winbind.so

答案2

您可以通过缓存 winbind 凭据来解决此问题。换句话说,您只有 AD UID,但其凭据会被缓存,这样即使 AD 不可用,他仍然可以登录。

http://wiki.samba.org/index.php/PAM_Offline_Authentication了解更多信息。

相关内容