无密码的 SSH 在 ubuntu 服务器 22.04.2 LTS 上不起作用

无密码的 SSH 在 ubuntu 服务器 22.04.2 LTS 上不起作用

首先谢谢大家的建议。

我的测试环境:两台ubuntu服务器(简称S1,S2)

服务器版本:22.04.2 LTS

我配置ssh免密码登录的步骤如下:

  1. 在 S1 和 S2 上安装 open-ssh 服务器和客户端

  2. 检查从 S1 到 S2 的 ssh 密码 => OK

  3. 在 S1 上生成密钥对

    ssh-keygen -t ed25519

  4. 将公钥从 S1 复制到 S2

    ssh-copy-id -i 我的ID.pub 用户名@IP_S2

  5. 检查 S2 上 ~/.ssh/authorized_keys 中附加的公钥

  6. 编辑 S2 上的 /etc/ssh/sshd_config 配置文件

    公钥认证 是

    ChallengeResponseAuthentication 否

    密码验证否

  7. 在 S2 上编辑 /etc/ssh/sshd_config.d/50-cloud-init.conf

    #PasswordAuthentication 是

  8. 重新启动 S2 上的 sshd

    sudo systemctl 重启 sshd

  9. 从 S1 到 S2 的 ssh => 失败

    错误消息:权限被拒绝(公钥)。

注 1:如果我将 PasswordAuthentication 标记为 no,我可以从 S1 ssh 到 S2。但是,仍然需要输入密码。

注2:我已经在/etc/hosts文件上编辑了主机名和IP之间的关系。

我参考了以下帖子,但无法根据它们解决我的情况。参考:从 18.04 升级到 22.04 后,无密码 SSH 不起作用无法禁用 SSH 上的密码验证

如何修复?

非常感谢。

相关内容