我似乎无法使用我在 Windows 机器上的 PuttyGen 中生成的密钥在 Ubuntu Server 10.10 上使 openSSH 工作。经过数小时的反复试验和网络搜索,我还是无法让我的 ssh 服务接受我的私钥!
这是我的sshd_配置。
我使用 Windows 中的 Putty 生成了公钥和私钥,然后使用 ssh 连接将我的密钥从 Putty 直接粘贴到位于 */etc/ssh/publickeys/authorized_keys2* 的 authorized_keys2 文件中
authorized_keys2 文件看起来像这样:ssh-rsa AAAAB3NzaC1yc2EAAAA...
末尾没有电子邮件或任何内容。我只是直接从 PuttyGen 粘贴它,没有使用密钥注释。
我感觉它无法正常工作,是因为某些我无法理解的细微差别或某些不寻常的设置或不兼容性。我重新启动了 ssh 服务(和机器),但无济于事。
我可能会遇到哪些常见的陷阱?有没有更简单的方法来生成 Putty 可以在 Windows 中使用的 ssh 密钥?
答案1
我解决了。我的问题是我需要将公钥转换为 OpenSSH 的格式。这需要使用以下命令:ssh-keygen -i -f puttygen_key > openssh_key
它将我的 putty 生成的密钥转换为 openssh 密钥,然后我只需将其重命名为 authorized_keys,它就可以正常工作了。