我正在尝试设置SSH服务器,其中一些用户更喜欢使用SSH密钥,但其他用户更喜欢LDAP提供的密码。
我发现我可以在sshd_config中为publickey + PAM或PAM只设置身份验证。
AuthenticationMethods publickey,keyboard-interactive:pam keyboard-interactive:pamPAM部件按预期工作。用户输入他们的LDAP密码,然后向他们询问一个验证代码。
但是,公钥身份验证的工作原理是让用户使用密钥+,然后被要求输入LDAP密码+,然后输入验证代码。(我们不希望密钥用户也被要求输入密码)
是否有可能支持密钥用户,使他们不需要输入他们的密码,而2FA验证代码仍然被要求。同时,没有提供密钥的人,还可以使用密码进行认证,同时也要求2FA验证代码?
注意:我们希望在系统中运行一个SSH服务器进程。我们不喜欢使用像在不同端口上运行多个SSH服务器这样的解决方案。
谢谢!
发布于 2020-12-03 10:41:13
我认为这篇RedHat文章可能对你有用。看起来您可以在sshd_config中执行以下操作:
为了将默认登录设置为LDAP密码+ TOTP。
AuthenticationMethods publickey,keyboard-interactive然后为每个用户设置publickey + TOTP。
Match user <username>
AuthenticationMethods publickey,keyboard-interactivehttps://unix.stackexchange.com/questions/620471
复制相似问题