以 root 身份登录且无 winbind 超时

以 root 身份登录且无 winbind 超时

我该如何设置我的 Linux 机器,以便如果 Active Directory 域控制器关闭,我仍然可以以 root 身份登录,而不会出现任何超时或延迟?

按照大多数文档中的示例,我pam_winbind.so之前已pam_unix.so在配置中列出/etc/pam.d。我相信这是问题的原因。我记得看到过其他/etc/pam.d设置,它们会更改顺序,并可能添加或pam_localuserpam_succeed_if以查看 uid 是否小于 500),但现在我找不到任何具体信息(而且我对 PAM 的了解还不够深入,无法快速轻松地自己想出一个强大的配置)。

如果 Active Directory 不可用,建议如何设置 PAM 与 Winbind 以避免超时和延迟?

答案1

您不仅通常想要pam_unix首先这样做,而且当您启动任何会话时,pam 将使用 枚举您所属的组initgroups(3),这将遍历group中定义的所有后端/etc/nsswitch.conf

造成这种行为的原因有几个,主要是关注点分离方面的技术限制,但简而言之,这允许您指定/etc/groupsLDAP 用户所属的位置wheel以允许其这样做sudo(随机示例)。

这导致root在具有远程目录服务器的主机上登录失败或非常缓慢的故事,即使用户是在本地定义的。这些故事是真实的,但最常见的原因是配置不正确。

如果您使用winbind,则可以定义不会通过 查找其组的用户winbind。 相应的选项是winbind initgroups blacklist中的 (全局) smb.conf。 它于 2007 年通过http://git.samba.org/?p=samba.git;a=commitdiff;h=7399ab779d7100059475ed196e6e4435b2b33bbd

请注意,默认值包含root,因此您可能不需要覆盖它。

对于访客:

如果您使用nss_ldapldap.conf则提供类似的nss_initgroups_ignoreusers。请参阅nss_ldap(5)

相关内容