在 Mac OS 中使用 .ppk 文件进行 SSH 快捷方式

在 Mac OS 中使用 .ppk 文件进行 SSH 快捷方式

我正在设置一个快捷方式,以便能够通过 SSH 进入我的 Web 开发服务器。我的配置文件如下所示(实际的端口和路径与密钥不同):

在此处输入图片描述

以下是我运行“ssh server”时发生的情况

在此处输入图片描述

我使用 puttygen 创建私钥时没有使用密码,所以我直接按了 OK。然后我收到此错误:

在此处输入图片描述

这里的问题是,我正在使用 .ppk 文件,而我应该使用其他文件吗?

答案1

要在 Mac OS X 上使用 Putty 生成的 ppk 密钥,你需要先转换它们

启动 puttygen.exe (...) 后,打开 .ppk 文件,输入密码并转到菜单中的“转换”。然后将文件保存为 OpenSSH 文件。

最后,将 .ssh 文件放到 Mac 上后,您需要限制 .ssh 文件的权限(“获取信息”,然后在“所有权和权限”->“详细信息”下为“组”和“其他”设置“无访问权限”)。

答案2

首先,请注意你有一个错误
Warning: the RSA host key for '[server]:10400' differs from the key for the IP address...

这意味着服务器的公钥与其 IP 地址不匹配。要解决此问题,请编辑 ~/.ssh/known_hosts 文件并删除以下条目:192.168.1.40

你可以用一个命令完成此操作

ssh-keygen -R 192.168.1.40

其次,有一种更好的方法来连接服务器,即使用 RSA 密钥而不是 .ppk 密钥。

据filext.com报道

PPK 文件类型主要与“PuTTY”相关。PuTTY 是一个终端仿真器应用程序,可以充当 SSH、Telnet、rlogin 和原始 TCP 计算协议的客户端。

你没有指定,但我假设你希望登录Linux的可以同时从 Windows 和 Mac 计算机访问 Web 服务器吗?

设置密钥的更好方法是获取 ssh 服务器的公钥,并将其放入 Mac 的 known_hosts 文件中。

然后,您可以通过获取 Mac 的公钥并将其附加到 Linux 网络服务器上的授权 hosts 文件来设置无密码 ssh。

以下是如何使用一个命令将 Mac 的公钥复制到 Linux 服务器上的授权主机

cat ~/.ssh/id_rsa.pub | ssh user@machine "mkdir ~/.ssh; cat >> ~/.ssh/authorized_keys"

资源

http://www.commandlinefu.com/commands/view/188/copy-your-ssh-public-key-to-a-server-from-a-machine-that-doesnt-have-ssh-copy-id

相关内容