OpenSSH .ppk 文件不起作用-主机不存在?

OpenSSH .ppk 文件不起作用-主机不存在?

我有两台机器:

  • 运行 Lubuntu 的服务器(拉根宾
  • 运行 Windows 7 的 PC(法罗尔

我一直使用 SSH 从 Windows PC 访问 Lubuntu 服务器。但是,到目前为止,我一直只使用密码验证,这显然不安全。今天我决定坚持下去并生成一些密钥。

不幸的是,它不起作用。当我从我的 Windows 机器上单击生成的 .ppk 私钥文件(尝试使用 Putty 打开它)时,我只收到一条错误消息:

PuTTY 错误:无法打开与 C 的连接:主机不存在。

以下是我经历的步骤。你能告诉我哪里出了问题吗?请记住,我已经在 Lubuntu 服务器上安装了 opensshserver,并使用密码验证。

  • 我使用以下方式创建了我的密钥

    chmod 700 ~/.ssh
    ssh-keygen -t rsa
    

我将它们作为 id_rsa 保存在 .ssh 文件夹中,并为它们创建了一个密码。

  • 我关闭了密码验证,将 SSH 访问权限限制为仅限我的用户,并关闭了 X11 转发sshd_config

    PasswordAuthentication no
    
    X11Forwarding no
    
    AllowUsers ***
    
  • 我在 ufw 中限制了 SSH。

  • 然后我创建了一个名为 的文件authorized_keys.ssh并将 的内容复制id_rsa.pub到其中并保存。

  • 我将私钥(id_rsa)传输到我的 Windows 机器上,用 puttygen.exe 打开它,并将其保存为文件.ppk

现在,当我尝试使用 PuTTY 本身打开该 .ppk 文件时,出现错误消息。

我做错了什么?谢谢。

答案1

您做错的主要事情是期望 PuTTY 打开 .ppk 文件:据我所知,密钥文件本身不包含有关目标主机的任何信息(事实上,这没有意义,因为可以使用相同的密钥对来访问不同的主机)。

相反,您应该正常打开PuTTY,并配置一个会话来使用Connection通过选择--> SSH-->Auth并浏览到以下位置的 .ppk 文件来获取密钥文件Private key file for authentication

putty 身份验证配置

或者,您可以在 Windows 会话中运行 PuTTYpagent并向其中添加密钥:PuTTY 将每次尝试通过代理进行身份验证,而不需要明确指定私钥文件。

相关内容