使用私钥和主机IP连接到AWS EC2实例

问题描述 投票:0回答:4

我有一个名为 awskey.ppk 的私钥文件和一个主机 IP 地址(我们称之为 123.45.678.910)

我正在尝试使用命令行命令连接到 EC2 实例 -

ssh -i /Users/ashishagarwal/EC2/awskey.ppk [email protected]

这给了我错误:

“/Users/ashishagarwal/EC2/awskey.ppk”的权限 0644 过于开放。 要求您的私钥文件不能被其他人访问。 该私钥将被忽略。 错误权限:忽略密钥:/Users/ashishagarwal/EC2/awskey.ppk 权限被拒绝(公钥)。

我该如何解决这个问题?

amazon-web-services amazon-ec2
4个回答
6
投票

有两件事。

  1. chmod
    将修复您的权限。该文件需要更改为600或400。
  2. putty使用的是
  3. ppk
    格式,需要将密钥转换为pem编码格式。您可以使用 putty keygen 工具来完成此操作。

4
投票

私钥文件的文件权限应为 400,可以使用

进行更改

chmod 400 文件路径

确保您使用正确的用户名,例如

ec2-user
ubuntu
。如果您使用的是基于 UNIX 的系统,请使用 .ppk 密钥。


3
投票

我假设您使用的是 Mac 或 Unix(基于命令行)。

运行此命令:

chmod 400 /Users/ashishagarwal/EC2/awskey.ppk

然后再次运行 SSH 命令,它应该可以工作。


0
投票

有一些额外的工作,因为我们需要首先将 .ppk 转换为 .pem 文件。 Macbook 的说明: 首先,我们需要安装 Homebrew 和 Putty:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

brew install putty

然后将 .ppk 转换为 .pem,如下所示:

puttygen yourFileLocation/your_aws.ppk -O private-openssh -o yourFileLocation/your_aws.pem

之后,设置权限限制访问:

chmod 400 yourFileLocation/your_aws.pem

现在您可以连接并登录到您的服务器实例,如下所示:

ssh -i yourFileLocation/your_aws.pem [email protected]

对于 Windows 用户,您可以从此处访问并下载 Putty。

© www.soinside.com 2019 - 2024. All rights reserved.