我想使用我的亚马逊ec2实例,但面临以下错误:

Permission denied (publickey).

我已经创建了密钥对并下载了.pem文件。

考虑到:

chmod  600 pem file.

然后,这条命令

ssh -i /home/kashif/serverkey.pem  ubuntu@ec2-54-227-242-179.compute-1.amazonaws.com

但是有这样的错误:

Permission denied (publickey)

另外,我如何连接filezilla上传/下载文件?


当前回答

我也犯过类似的错误

debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Trying private key: xxxx.pem
debug1: Authentications that can continue: publickey
debug1: No more authentication methods to try.
Permission denied (publickey).

我的问题是,由于第3步的run-on- startup脚本上的错误,实例没有正确启动:在高级详细信息下配置实例详细信息:

我心里想的是:

# include
 https://xxxx/bootstrap.sh


实际输入的内容会破坏实例设置

# include

https://xxxx/bootstrap.sh

因此没有创建实例端的公钥

其他回答

我也有同样的问题,这很奇怪。如果你相信你所做的一切都是好的,那么请遵循以下的原则: 有时会混淆EC2实例的用户!!有时你会得到ec2-user, ubuntu, centos等等。所以检查你的用户名的机器!!

以root用户登录 SSH -i你的密钥。Pem(400权限)root@<ip> 它将抛出错误,并将提供可用的用户名。然后使用该用户登录。

下面是一个可能产生此错误的令人沮丧的场景:

如果您从另一个实例(例如实例xyz)创建的AMI中导入一个新实例,那么新实例将只接受实例a使用的相同密钥。这是完全可以理解的,但它会令人困惑,因为在创建新实例的一步一步的过程中,您被要求选择或创建一个键(在最后一步),这将不起作用。

无论您创建或选择的键是什么,只有用于实例XYZ的键将被新实例接受。

我已经两次有正确的键和ssh命令行(我知道,因为我正在复制一个工作的Ubuntu 14.04实例),但就是不能ssh到一个新实例,即使在上面Wade Anderson建议的等待5分钟之后。

我必须摧毁并重新制造机器。这种情况已经发生过两次。因为一开始我进不去,我看不出有什么问题。

所以,如果你有这个问题,试试这个。

您需要执行以下步骤:

如果您使用的是Linux,请打开ssh客户端或终端。 找到您的私钥文件并更改目录。 CD <您的。pem文件>的路径 执行以下命令: Chmod 400 <filename>.pem SSH -i <filename>。pem ubuntu@ < ipaddress.com >

如果ubuntu用户无法使用,那么尝试使用ec2-user。

它是区分大小写的。

错误:SSH EC2-user@XXX.XX.XX.XX -i MyEC2KeyPair.pem

正确方法:SSH ec2-user@XXX.XX.XX.XX -i MyEC2KeyPair.pem