我正试图通过SSH实现Yubikey身份validation。 我编辑了我的/etc/pam.d/sshd文件,如下所示,它似乎工作在本地连接 ( ssh user@localhost ):
#%PAM-1.0 auth required pam_yubico.so id=20682 authfile=/etc/yubikey_mappings debug trace auth required pam_sepermit.so auth substack password-auth auth include postlogin account required pam_nologin.so account include password-auth password include password-auth # pam_selinux.so close should be the first session rule session required pam_selinux.so close session required pam_loginuid.so # pam_selinux.so open should only be followed by sessions to be executed in the user context session required pam_selinux.so open env_params session optional pam_keyinit.so force revoke session include password-auth session include postlogin
但是,当我尝试从远程机器连接时,它不会提示我input密钥。 可能的问题是什么?
一般的逻辑是,一个支持PAM的程序处理shelllogin将依次访问auth , account和session栈,但是如果程序使用自己的实现来处理一个或多个这些function,程序可以简单地跳过其中的任何一个。
sshd支持几种不能委派给PAM的身份validation模式,因为它们依赖于不属于密码或质询 – 响应协商范围的方法。 这些通常是基于密钥或票证的:ssh密钥,GSSAPI / krb5等