ssh 似乎找不到本地私钥

ssh 似乎找不到本地私钥
  1. ssh-keygen -t rsa -b 2048我创建了带有参数的键,并且还尝试了不带有参数的键ssh-keygen(应该是相同的)。
  2. 私钥位于 .ssh/id_rsa
  3. 其权限为600
  4. .ssh目录权限为700
  5. 它没有使用密码
  6. 使用-i <key file>没有效果。
  7. 远程服务器日志未提及密钥失败。它看起来就像是正常的密码登录。这就是为什么我认为一定是本地 ssh 未找到密钥。

我不知所措。我可以使用另一个盒子(Windows 盒子,使用 PuTTY)中的密钥通过 ssh 连接,所以我知道它在服务器上工作正常。我的本地 Linux 是 Mint,它是 Ubuntu 的衍生产品,但我怀疑这与任何事情都没有任何关系。

  • 我尝试运行ssh-agent,但两者都没有执行任何操作(在告诉我它正在添加我的身份之后),而且似乎只适用于密码密钥文件,而我的不是。

以下是 ssh 命令的结果ssh -l remoteusername -p 85 domain.com -vvvhttps://pastebin.com/n2ef8qGv

该输出来自我没有使用 -i 的时候。但我指定的文件无论如何都是 .ssh/id_rsa,它是相同的。


解决了。问题出在服务器上的 authorized_keys 文件的格式上。我将两个密钥连接在一起,因为我的搜索显示格式就是这样。但它们需要用换行符分隔。

因为 /var/log/auth.log 对此只字未提,所以我假设问题不在于服务器。我想我错了。我知道上次我遇到 ssh 问题时日志显示了它。事实上,刚才我故意破坏了它并尝试登录,日志中没有关于密钥登录失败的任何信息。我​​在本地收到消息“服务器拒绝我们的密钥”,这很好,但 /var/log/auth.log 或 中没有任何关于服务器的信息journalctl _COMM=sshd

相关内容