6.37. pam_unix-传统密码验证

pam_unix.so [ ... ]

6.37.1. DESCRIPTION

这是标准的 Unix 身份验证模块。它使用来自系统库的标准调用来检索和设置帐户信息以及身份验证。通常,如果启用了 shade,则可以从/ etc/passwd 和/ etc/shadow 文件获得该文件。

帐户组件基于以下* shadow 元素执行构建用户帐户和密码状态的任务:expire,last_change,max_change,min_change,warn_change。对于后者,它可以为用户提供有关更改密码的建议,或者通过 PAM_AUTHTOKEN_REQD *返回,延迟向用户提供服务,直到他们构建了新密码。上述列出的条目记录在 shadow(5)手册页中。如果用户的 Logging 不包含这些条目中的一个或多个,则不会执行相应的“shade”检查。

认证组件执行检查用户凭据(密码)的任务。该模块的默认操作是,如果用户的官方密码为空,则不允许用户访问服务。

提供了辅助二进制文件 unix_chkpwd(8),用于在用户密码存储在受保护的读取数据库中时检查用户密码。这个二进制文件非常简单,只会检查调用它的用户的密码。该模块的认证组件代表用户透明地调用它。这样,xlock(1)之类的应用程序就可以在没有 setuid-root 的情况下运行。默认情况下,该模块将在帮助程序二进制文件执行期间暂时关闭 SIGCHLD 处理。通常这是正确的做法,因为许多应用程序都不准备处理他们不知道是fork() d 的孩子的 signal。 noreap模块自变量可用于抑制此临时屏蔽,在某些应用程序中可能需要使用该参数。

pam_unix 模块通过帮助程序二进制文件支持的密码的最大长度为* PAM_MAX_RESP_SIZE *-当前为 512 字节。对话功能提供给模块的其余密码将被忽略。

该模块的密码组件执行更新用户密码的任务。默认加密哈希来自*/etc/login.defs ENCRYPT_METHOD *变量

用户登录或离开系统时,此模块的会话组件会记录日志。

该模块的其他功能支持的其余参数将被忽略。其他参数通过 syslog(3)记录为错误。

6.37.2. OPTIONS

无效的参数使用 syslog(3)记录。

6.37.3. 提供的模块类型

提供了所有模块类型(accountauthpasswordsession)。

6.37.4. 返回值

6.37.5. EXAMPLES

/etc/pam.d/login的示例用法是:

# Authenticate the user
auth       required   pam_unix.so
# Ensure users account and password are still active
account    required   pam_unix.so
# Change the user's password, but at first check the strength
# with pam_cracklib(8)
password   required   pam_cracklib.so retry=3 minlen=6 difok=3
password   required   pam_unix.so use_authtok nullok yescrypt
session    required   pam_unix.so

6.37.6. AUTHOR

pam_unix 由许多人撰写。

上一章 首页 下一章