pam-email 是一个用于电子邮件身份验证的 PAM 模块。它通过电子邮件将令牌发送给用户,并在提示中期望用户提供相同的令牌。使用时,它会发送一封带有随机生成令牌的电子邮件,并要求用户在提示时输入。该令牌是针对特定提示生成的,不会存储在任何地方。模块通过端口 25 连接到 localhost,使用 curl 库进行 SMTP 通信,不提供 smtp 身份验证。收件人自动为尝试验证的用户,例如,如果您尝试以 'someguy' 身份登录,电子邮件信封中的 RCPT TO: 将为 'someguy'。发件人 (MAIL FROM) 为 root。换句话说,您需要在使用 pam_email 的机器上配置一个部分正常工作的 smtp 服务器。默认令牌长度为 12 个字符(可在源代码中更改)。令牌仅包含 Base58 字符,以避免读取问题。以下是电子邮件示例: