除非我先在服务器上本地登录,否则无法通过 ssh 进入远程服务器

use*_*536 7 linux ssh ubuntu

我已经在旧桌面上设置了 ubuntu 服务器,并且能够使用密码登录没问题。然后我设置了 ssh 密钥并禁止使用密码登录。我现在遇到了这个奇怪的问题,我在尝试远程 ssh 时收到公钥被拒绝错误,除非我将显示器连接到旧桌面并在本地登录到服务器,然后使用密钥远程登录到服务器 - 这有效。

我已经检查了两台机器上 .ssh 文件/文件夹的权限,它们都很好:主目录为 755,.ssh 为 700,id_rsa.pub 为 644,id_rsa 和authorized_keys 为 600。

知道这里发生了什么吗?

use*_*536 5

答案正如 Michal Politowski 在评论中所说。加密的主目录包含 .ssh 文件夹,因此在我本地登录并解密文件夹之前,ssh 命令无法访问它。解决方案是创建/home/ssh/%user%/并将authorized_keys文件放在那里,然后通过sshd_config直接ssh查看那里。请参阅评论以获取有用网页的链接。


小智 5

这是网络适配器。它被配置为仅可供您的用户使用。

您必须将网络适配器设置为可供其他/所有用户使用。在 GNOME 中,这是通过网络适配器设置中的“可供其他用户使用”复选框来完成的。

如果没有这个,您的用户将需要先在本地登录,然后网络适配器开始侦听 SSH 等标准服务。