首页 文章

用于ssh的PAM模块:如何知道用户是否使用密钥或密码进行身份验证

提问于
浏览
1

我正在为ssh服务编写PAM模块 . 我想知道如何在PAM模块中确定用户是否使用密码或密钥对自己进行身份验证 .

感谢您的帮助,期待您的回答! ! !

1 回答

  • 1

    我的合理猜测是sshd只使用pam_auth进行键盘交互式登录 . 对于基于密钥的登录,不会调用pam_auth . 通过编写自己的PAM模块来记录或重新使用某些现有模块的详细日志记录,可以相当容易地验证 .

    请注意,我认为sshd仍然使用PAM会话,帐户等 .

    我不确定为什么你需要检测你想要检测的东西 . 如果我的猜测是正确的,那么应该很容易想出一个hacky方法,但在我看来你应该澄清这个问题 .

    事实上,https://stackoverflow.com/questions/7318754/pam-module-pam-prompt-conversation-function-problem似乎证实了我的猜测 . :)

相关问题