2015-07-10 80 views
1

我在Windows 7上安装了Cygwin,并将它用于SSH到各种机器中。在Windows上配置AWS SSH密钥/ Cygwin

我刚刚创建了一个AWS账户,并为我的免费层实例生成了公钥/私钥。我下载了一个PEM文件(私钥),现在正试图通过它与SSH进入节点。根据AMIs文档,我使用的AMI不使用密码,100%依赖于SSH,如下所示:ssh [email protected]

这意味着我需要PEM文件“正确安装”,但我不知道如何做到这一点,特别是在Windows/Cygwin堆栈上。在~/.ssh我看到以下内容:

C:/Users/myuser/.ssh/ 
    id_rsa 
    id_rsa.pub 
    known_hosts 

我试图简单地复制PEM文件到.ssh/但不工作。有任何想法吗?

+1

你可能会检查你的SSH客户端的手册页,应该有一个添加功能来添加新的密钥到你的auth文件。像'ssh-add',或者其他东西。 – Seeds

+0

谢谢@种子(+1) - 但没有骰子。我刚刚运行了'man ssh> sshman.txt',然后扫描了'sshman.txt',就像“* add *”,“* import *”,“* merge *”等等,没有任何东西显示出来。 – smeeb

+1

如果你看看SEE ALSO部分,它应该列出相关的命令。我有一段时间没有用过cygwin;你安装了ssh客户端,还是预装了?您可以尝试为ssh制造商找到一个网页。 – Seeds

回答

3

我不知道cygwin是否使用与linux相同的客户端,但是您的问题中缺少一些内容。但我会给你一些建议。

你得到的错误消息是什么导致你相信将该文件复制到.ssh中不起作用?我猜你需要在.pem文件上有正确的权限 - .ssh目录应该是700,而且pem文件应该是600. ls -la ~/.ssh是什么样的?在任何情况下,请尝试:

chmod 700 ~/.ssh 
chmod 600 ~/.ssh/*pem 

接下来,你必须确保你使用正确的用户名进行登录:

ssh -i ~/.ssh/whatever.pem [email protected] 

取决于AMI的用户名会有所不同 - 例如, Amazon Linux AMI使用ec2用户,而一些旧的RedHat AMI仍然使用root,而我认为ubuntu使用ubuntu @

最后,您必须确保分配给该实例的安全组的端口22已打开到您的IP地址。