我正在尝试通过Mac终端连接到Amazon EC2服务器 . 我有一个PPK文件,没有附加密码,但当我尝试连接时,我得到一个弹出框,上面写着“输入SSH私钥的密码” .
所以我们尝试创建一个有密码的PPK - 但是它不接受密码,它仍然拒绝连接 .
我有一个Windows用户能够在Putty上使用相同的PPK进行连接 .
有没有人遇到过这个问题?
也许你的问题是你的密钥的权限 . 我知道在linux中需要更改权限 .
摘自网站http://om4.com.au/ssh-rsa-key-pairs-passphrases-leopard/
清除〜/ .ssh目录的内容并将目录权限设置为700(目录需要“可执行”)$ rm~ / .ssh / * $ chmod 700~ / .ssh
生成你的rsa密钥对(这里有各种变体,但这是我使用的版本):$ ssh-keygen -t rsa
将〜/ .ssh中所有文件的权限设置为600 $ chmod 600~ / .ssh
将id_rsa.pub密钥复制到服务器的.ssh / authorized_keys文件中
使用以下命令将密码短语添加到钥匙串:$ ssh-add -K(您将看到[your system] / .ssh / id_rsa的输入密码短语:)
Mac正在寻找.pem密钥 . ppk是专门为腻子生成的 . 如果您没有原始的ppk密钥 .
从http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html下载puttygen.exe然后转到转换 - >导出OpenSSH密钥 . 将输出保存为.pem文件,并尝试将其与mac一起使用 .
如果这不起作用,您可以发布从mac运行的命令 . 它可能你有一些额外的参数或东西 .
在ssh或sftp中使用错误格式的密钥(例如ppk密钥)可能导致错误 Enter your password for the SSH key x . 这是因为它被解释为加密的ssh密钥,因此当实际上没有密码时,会提示输入密码 .
Enter your password for the SSH key x
在OS X中,我只需在命令行中键入以下内容即可模拟此错误:
sftp -o IdentityFile=randomtextfile mysftpserver.com
解决方案是使用bwight建议的puttygen转换文件 .
除了其他答案之外,问题可能来自您未指定要连接的用户的事实 .
例如, ssh -i francky.pem 208.52.170.43 将在Mac上询问您的密码,而 ssh -i francky.pem root@208.52.170.43 不应该指定用户 .
ssh -i francky.pem 208.52.170.43
ssh -i francky.pem root@208.52.170.43
我遇到了MAC中完全相同的问题,我找到了一种非常简单的方法来摆脱它 . 请使用以下> ssh user @ IP,而不是使用ssh -i IP地址
希望你在这么久之后找到了答案:)
就我而言,问题是文件的中断类型 . 试试这个:
1.-使用TextWrangler打开.pem文件
2.-在app的底部,验证Break Type是否为“Windows(CRLF)” .
这个问题让我把头发拉了20分钟左右 . 意识到我能够从另一个终端窗口成功连接 . 在我的情况下,我只需要关闭当前的终端窗口并使用另一个或新窗口 . 很奇怪,但可能会帮助你 .
7 回答
也许你的问题是你的密钥的权限 . 我知道在linux中需要更改权限 .
摘自网站http://om4.com.au/ssh-rsa-key-pairs-passphrases-leopard/
清除〜/ .ssh目录的内容并将目录权限设置为700(目录需要“可执行”)$ rm~ / .ssh / * $ chmod 700~ / .ssh
生成你的rsa密钥对(这里有各种变体,但这是我使用的版本):$ ssh-keygen -t rsa
将〜/ .ssh中所有文件的权限设置为600 $ chmod 600~ / .ssh
将id_rsa.pub密钥复制到服务器的.ssh / authorized_keys文件中
使用以下命令将密码短语添加到钥匙串:$ ssh-add -K(您将看到[your system] / .ssh / id_rsa的输入密码短语:)
Mac正在寻找.pem密钥 . ppk是专门为腻子生成的 . 如果您没有原始的ppk密钥 .
从http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html下载puttygen.exe然后转到转换 - >导出OpenSSH密钥 . 将输出保存为.pem文件,并尝试将其与mac一起使用 .
如果这不起作用,您可以发布从mac运行的命令 . 它可能你有一些额外的参数或东西 .
在ssh或sftp中使用错误格式的密钥(例如ppk密钥)可能导致错误
Enter your password for the SSH key x
. 这是因为它被解释为加密的ssh密钥,因此当实际上没有密码时,会提示输入密码 .在OS X中,我只需在命令行中键入以下内容即可模拟此错误:
解决方案是使用bwight建议的puttygen转换文件 .
除了其他答案之外,问题可能来自您未指定要连接的用户的事实 .
例如,
ssh -i francky.pem 208.52.170.43
将在Mac上询问您的密码,而ssh -i francky.pem root@208.52.170.43
不应该指定用户 .我遇到了MAC中完全相同的问题,我找到了一种非常简单的方法来摆脱它 . 请使用以下> ssh user @ IP,而不是使用ssh -i IP地址
希望你在这么久之后找到了答案:)
就我而言,问题是文件的中断类型 . 试试这个:
1.-使用TextWrangler打开.pem文件
2.-在app的底部,验证Break Type是否为“Windows(CRLF)” .
这个问题让我把头发拉了20分钟左右 . 意识到我能够从另一个终端窗口成功连接 . 在我的情况下,我只需要关闭当前的终端窗口并使用另一个或新窗口 . 很奇怪,但可能会帮助你 .