Linux 服务器 ssh 连接无法使用 ssh key gen 验证我的账户,并提示我输入密码

Linux 服务器 ssh 连接无法使用 ssh key gen 验证我的账户,并提示我输入密码

我在 Ubuntu 22.04.2 中遇到一个问题。我无法使用复制的公钥通过 SSH 连接到远程服务器。我已使用 bash 终端在本地计算机上生成了 SSH 密钥对,并已成功将公钥 (id_rsa.pub) 复制到远程服务器。但是,当我尝试使用相应的私钥 (id_rsa) 通过 SSH 连接到服务器时,系统仍提示我输入密码。我甚至复制了我的文件并将其放在不同的目录中,试图找出它在哪里寻找我的 SSH 密钥,但到目前为止我还没有运气。是什么原因导致了这个问题,我该如何解决它?

我的过程:

  • 用于mkdir在我的服务器端创建一个 .ssh 目录。里面有一个名为 authorized_keys 的文件,其中包含我的公钥。

  • 在我的 bash 终端中,我使用ssh-keygen并生成了两个密钥,id_rsa 和 id_rsa.pub

  • 已验证我拥有 id_rsa 和 id_rsa.pub

  • 使用scp ~/.ssh/id_rsa.pub username@ip_address:~/.ssh/authorized_keys 它复制正确。为了验证,我使用 nano 检查了我服务器上的公钥。

  • 更新权限。使用sudo chmod 700 ~/.ssh/sudo chmod 600 ~/.ssh/*

尽管严格遵循这些步骤并重复多次,但我还是无法解决问题。我还探索了线程中提供的解决方案,例如确保 /etc/ssh/sshd_config 中的设置也得到正确更新。尝试将 PasswordAuthentication 从是改为否并进行试验,但没有成功。

我去了我的 linode 仪表板并将我的公钥粘贴到那里,但似乎仍然找不到它。

相关内容