PAM 模块和 nsswitch.conf

PAM 模块和 nsswitch.conf

据我所知,Linux 上有两种可用的身份验证方案。

  1. PAM 身份验证模块以及
  2. /etc/nsswitch.conf 文件

当用户登录时,哪一个优先?

答案1

不要混淆 nssswitch 和 PAM。它们是不一样的:

/etc/nsswitch.conf是一个要配置的配置文件,系统应从中获取其数据库。用户、组、密码、dns 查找等的数据库。例如,当您更改文件的所有者 ( chown) 或权限 ( chmod) 时。然后系统需要知道如何解释 uid 和 gid;从文件 ( /etc/passwd, /etc/shadow, /etc/group) 或从 LDAP 服务器(或两者)或从其他服务(NIS、AD、Kerberos)中。同样与 nsswitch 相关的是重复条目情况下的优先级。

聚丙烯酰胺是一个组件,它定义在身份验证、密码更改或会话启动时应发生什么。PAM 授予或拒绝访问权限。它挂载需要在用户登录时挂载的文件系统 ( pam_mount.so)、执行登录脚本 ( pam_exec.so)、通过 unix 方法 ( pam_unix.so) 或通过 LDAP ( pam_ldap.so) 进行身份验证。它将用户提供的密码从一个模块传递到另一个模块,并且(无论如何配置)模块可能会破坏堆栈,也可能不会。这会导致身份验证成功或失败。

相关内容