1

我有 Windows 并使用 cygwin。

我有一个 Amazon Ubuntu 实例,我可以使用我的系统正常登录

ssh -i 密钥文件\用户名@AmazonHost。

但是,当我通过 SSH 连接到我办公室的 CentOS 服务器并尝试使用相同的命令从那里通过 SSH 连接到 Amazon 实例时,我总是会收到公钥错误。我已经复制了我的密钥文件并将权限设置为 chmod 400,就像我在 Cygwin 客户端上所做的那样。同样在 CentOS 上,我验证我可以通过端口 22(telnet AmazonHost 22)访问亚马逊实例。

是否需要在 CentOS 或 Office 防火墙上进行一些其他配置以允许我连接到 Amazon?

4

1 回答 1

0

如果您在一台机器上而不是另一台机器上收到公钥错误,那么这两个密钥是不同的,即使您认为它们是相同的。(除非一台机器的 ssh 客户端完全损坏。)

该文件可能在传输过程中已损坏,但由于其中一台机器是 Windows(尽管使用 Cygwin)而另一台是 Linux,我的猜测是当密钥从一台机器复制到另一台机器时,行结尾出了点问题。密钥通常被编码为文本(亚马逊的控制台就是这样做的),并且对行尾更改完全免疫,但这似乎是一个可能的原因。

你是如何将文件从一台机器传输到另一台机器的?如果您可以调整它,请尝试以二进制模式传输一次,然后以文本模式传输一次,看看是否可行。此外,只需在文本编辑器中查看每台机器上的文件。它们看起来一样吗?

于 2013-06-30T02:48:33.137 回答