我想使用我的亚马逊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上传/下载文件?


当前回答

您需要执行以下步骤:

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

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

其他回答

这个问题可以通过下面的命令登录Ubuntu系统来解决:

ssh -i ec2key.pem ubuntu@ec2-public-IP

以我自己为例,我做了以下事情:

chmod 400 <key.pem>

ssh -i <key.pem> ec2-user@ec2_public_dns (for debian)

我最初使用root@部分,我得到了这个提示:

Please login as the user "ec2-user" rather than the user "root".

另一个可能的问题:登录ID错误

查看“使用说明”

上面的建议都很好,但我遇到的问题是我选择了一个预先制作好的实例。实例启动后,请查看使用说明。我错误地使用了私钥的登录id,而在指令中我应该使用“bitnami”(例如bitnami@domain -i key.pem)

在这种情况下,问题产生于密钥对丢失。关于这个:

无法更改实例上的密钥对。您必须创建一个使用新密钥对的新实例。 如果您的实例由Elastic Beanstalk上的应用程序使用,则可以解决这个问题。

你可以遵循以下步骤:

访问AWS管理控制台 打开弹性豆茎标签 从所有应用程序选项卡中选择您的应用程序 从左边menù选择配置 单击Instances Gear 在服务器表单中检查EC2密钥对输入并选择新的密钥对。您可能必须刷新列表才能看到刚刚创建的新密钥对。 保存 Elastic Beanstalk将为您创建与新密钥对关联的新实例。


通常,请记住必须允许EC2实例接受入站SSH通信。

为此,您必须为EC2实例的Security Group创建一个特定的规则。 您可以按照以下步骤进行操作。

Access to AWS Management Console Open EC2 Tab From Instances list select the instance you are interested in In the Description Tab chek the name of the Security Group your instance is using. Again in Description Tab click on View rules and check if your Security Group has a rule for inbound ssh traffic on port 22 If not, in Network & Security menù select Security Group Select the Security Group used by your instance and the click Inbound Tab On the left of Inbound Tab you can compose a rule for SSH inbound traffic: Create a new rule: SSH Source: IP address or subnetwork from which you want access to instance Note: If you want grant unlimited access to your instance you can specify 0.0.0.0/0, although Amazon not recommend this practice Click Add Rule and then Apply Your Changes Check if you're now able to connect to your instance via SSH.

希望这能像帮助我一样帮助别人。

对于ubuntu 12.04 LTS微实例,我必须将用户名设置为选项

ssh -i pemfile.pem -l ubuntu dns