认证优先级

认证优先级

在 nsswitch.conf 文件中,我有一个条目“passwd files sss”。我还有证据表明服务器正在进行 LDAP 身份验证。由于 passwd 的“文件”已启用并且它指向本地身份验证,因此哪一个优先?

答案1

文件 /etc/nsswitch.conf 定义用于在 NSS 映射中进行查找的 NSS 模块的顺序。严格来说,查找密码map 不用于身份验证,仅用于检查尝试登录的用户是否存在。

密码身份验证是通过 /etc/pam.d 中为使用 PAM 的每个服务配置的 PAM 堆栈完成的。

  • 对于本地用户 PAM 模块pam_unix.so会在阴影映射以获取散列密码并根据此检查用户的密码。
  • 对于远程 LDAP 用户阴影地图应该不是使用。例如固态硬盘发送 LDAP 简单绑定请求,让 LDAP 服务器远程检查用户的密码。它不查询密码哈希值。

因此,要找出所使用的 PAM authc 模块的顺序,您必须检查目录 /etc/pam.d 中的文件。如今大多数 Linux 系统都有用于每个服务的通用包含文件,例如大多数情况下是由工具创建的/etc/pam.d/common-auth符号链接。common-auth-pcpam-config

答案2

man 5 nsswitch.conf(加粗):

第一列是数据库名称。其余列指定:

  • 一项或多项服务规范,例如“files”、“db”或“nis”。 线路上服务的顺序决定了依次查询这些服务的顺序,直到找到结果。

您的情况files优先,这是应该的 - 通常您不希望 LDAP 条目root覆盖本地条目。

相关内容