我有一个虚拟服务器。最近,我禁用了PasswordAuthentication
它,以使其更安全。
我已经在 Windows 中使用 Puttygen 创建了密钥对。我在 Linux 中使用私钥 (.ppk) 进行转换,putty-tools
以便可以在 Linux 设备上使用它。
问题是我无法从 Linux 机器登录到服务器。Windows 运行正常(我使用 Putty)。
我也想过转换公钥,但我该把它放在服务器的哪里呢?服务器里面已经有一个公钥了,authorized_keys
它和我一开始创建的公钥是一样的。不管私钥的格式是什么,它都应该可以工作,尤其是因为它基本上只是一串文本?
PS 我可以重新启用密码验证,但我想使用 ssh。
答案1
很可能您在 Linux 机器上对私钥的权限是错误的。它应该是 0600,例如:
$ ls -l ~/.ssh/id_rsa
-rw-------. 1 me mygroup 1675 Mar 25 09:09 /home/me/.ssh/id_rsa
$