linux – OpenSSH:不同的身份验证方法

前端之家收集整理的这篇文章主要介绍了linux – OpenSSH:不同的身份验证方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要让用户使用不同的身份验证方法登录CentOS系统.有些人使用密码而其他人使用公钥.

我按照这里提到的方法
How can I setup OpenSSH per-user authentication methods?

但是,我没有成功进行基于密码的登录.

在sshd_config文件中,我有:

AuthenticationMethods keyboard-interactive,publickey
PasswordAuthentication no

Match User newton
    PasswordAuthentication yes
Match all

更新:
我发现只有当我使用Google身份验证启用了2FA时才会出现此问题,并且我有以下内容

AuthenticationMethods keyboard-interactive,publickey

虽然对于用户牛顿,我已设置密码验证我看到以下错误

[root@localhost]# ssh newton@50.39.213.152
Permission denied (publickey).

任何建议表示赞赏.

解决方法

尽管@Tolsadus的回答可能指向了正确的解决方案,但它并没有清楚地回答这个问题.

简而言之,ssh_config的手册页是一个很好的开始,可以了解ssh中的配置解析器是如何工作的(相同的规则适用于sshd_config):

For each parameter,the first obtained value will be used

这意味着您的示例将为所有用户将PasswordAuthentication设置为no,并且对于newton用户不会覆盖它(因为它已经设置).要解决它,您应该在匹配块中设置默认值.这将对牛顿用户产生预期的影响:

Match User newton
    PasswordAuthentication yes
Match all
    PasswordAuthentication no
原文链接:https://www.f2er.com/linux/397460.html

猜你在找的Linux相关文章