由弹性 beantalk 生成的 ec2 实例的默认用户名

Posted

技术标签:

【中文标题】由弹性 beantalk 生成的 ec2 实例的默认用户名【英文标题】:Default username for ec2 instance spawned by elastic beanstalk 【发布时间】:2019-10-08 07:02:31 【问题描述】:

我正在尝试使用弹性 beanstalk 部署应用程序,我需要做的一件事是能够登录到底层 ec2 实例并添加依赖项。我向实例添加了一个密钥对,并将私钥文件放在我的计算机上的 ~/.ssh 中。接下来我为 ec2 实例指定了密钥对并重新启动,最终状态为绿色

当我尝试 ssh 进入 ec2 实例时,我收到以下错误:

$ ssh ec2-user@myinstance.us-east-1.elasticbeanstalk.com
ec2-user@myinstance.us-east-1.elasticbeanstalk.com: Permission denied (publickey).

在文档中说这可能是由于用户名不正确。

https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/TroubleshootingInstancesConnecting.html

有谁知道 elastic beanstalk 创建的 ec2 实例的默认用户名是什么?

另外,如果我做这一切都错了,也会很感激那里的一些指示。

【问题讨论】:

如果您使用的是eb cli,那么您也可以通过运行命令:$ eb ssh my-environment-name ssh 进入。这样您就不必担心底层实例是否已更改并且每次都必须查找新的公共 DNS。 【参考方案1】:

1。 为了确保您的连接方式没有错误:

转到 EC2-> 实例

选择您的实例

然后按连接

您应该从连接弹出窗口的说明中获取连接命令。那里提到了正确的用户名以及如何在 pem 上设置正确权限的说明(适用于 linux)

2。 确保您修改了您尝试连接的实例的安全组,它允许从您的 pc 的 ip 进行 ssh

3。 此外,如果您从公司网络连接,请尝试从另一个网络连接。可能是防火墙问题。

4。 最后但并非最不重要的一点是确保您在 .ssh 路径中使用 ssh,或提供正确的 pem 路径

【讨论】:

如果我在 EB 中查看它,它看起来像是设置了密钥对。但是,当我尝试连接指令时,EC2 实例说该实例未与密钥对关联。 如果您滚动到 ec2 控制台的右侧,您看不到相关的密钥对吗?您尝试连接的实例是否正确? 你知道吗,我的 ec2 仪表板没有更新,我指向的是在我使用密钥对更新时被杀死的实例。用较新的实例试了一下,效果很好。

以上是关于由弹性 beantalk 生成的 ec2 实例的默认用户名的主要内容,如果未能解决你的问题,请参考以下文章

如何在 ec2 实例上运行元数据库(没有弹性 beantalk)

我的 ec2 实例中乘客日志文件的位置(弹性 beantalk + rails)

如何使用 https 在弹性 beantalk 中配置单个 ec2 实例

没有密钥对的SSH aws ec2弹性beantalk

在弹性 beantalk 部署上的 ec2 微型实例上创建交换文件/驱动器

我们可以将两种不同类型的 AWS EC2 实例与弹性 beantalk 负载均衡器一起使用吗