我刚刚注册了亚马逊的Elastic Beanstalk新产品。我不明白的是如何SSH到Beanstalk实例。我没有私钥,因为Beanstalk代表我生成了实例。
当前回答
使用当前UI为ElasticBeanstalk ec2实例设置键对的方向是: 警告:这将需要更新ElasticBeanstalk App中的EC2实例。 注意:在此之前,您需要在EC2仪表板中创建一个密钥对。
1)在AWS仪表板中,选择ElasticBeanstalk服务 2)选择要使用的应用程序。 3)选择“配置” 4)在“实例”配置框中选择齿轮(设置)图标。 5)这将带你到一个名为“服务器”的页面,在那里你可以更新“EC2密钥对”下拉字段与你想要的密钥对,并选择“保存”。
需要注意的一点是,这可能不适用于具有多个实例的应用程序(但我认为,如果它们都与密钥对位于同一区域,则可能如此)。
其他回答
如果您已经使用eb init设置了您的环境的CLI,那么它应该是 简单
Eb SSH -设置,它将允许您创建一个新的密钥对或使用一个现有的(如果存在的话)。
您还可以使用eb连接到现有的环境,尽管我还没有这样做。
安装CLI的详细信息- https://docs.aws.amazon.com/console/elasticbeanstalk/eb-cli-install
我也一直在玩这个。
去你的弹性豆茎服务标签 在你的应用程序概览开始行动——>编辑配置 将出现在EC2选项卡中的密钥名称(对于同一区域)添加到现有的密钥输入框中,然后点击apply changes
该服务将重新启动,所以煮5分钟咖啡
在相同区域的ec2选项卡上,您将看到新的运行实例。 使用3中添加的密钥,SSH到公共DNS名称为ec2-user 如。 ssh ec2 - user@ec2 - xx - xxx - xx xxx.compute - 1. amazonaws.com
我发现这是一个两步的过程。这假设您已经设置了一个访问相关区域中的EC2实例的密钥对。
配置安全组
在AWS控制台中,打开EC2选项卡。 选择相关区域并单击Security Group。 如果您已经在该区域中启动了一个Elastic Beanstalk实例,那么您应该有一个elasticbeanstalk-default安全组。 编辑安全组,添加SSH访问规则。下面将锁定它,只允许从特定的IP地址进入。 SSH | tcp | 22 | 22 | 192.168.1.1/32
配置Elastic Beanstalk应用程序的环境
如果您还没有创建密钥对,请单击ec2选项卡中Security Group下面的密钥对。 在AWS控制台中,打开Elastic Beanstalk选项卡。 选择相关区域。 选择相关环境 在左侧窗格中选择“配置”。 选择安全。 在“EC2密钥对:”下,在“现有密钥对”字段中选择您的密钥对的名称。
如果在这些步骤之后,您看到“运行状况”设置为“已降级”
这是正常的,这只是意味着EC2实例正在更新。等几秒钟就会好的
实例重新启动后,需要从AWS Console EC2实例选项卡或通过API获取主机名。然后您应该能够ssh到服务器上。
$ ssh -i path/to/keypair.pub ec2-user@ec2-an-ip-address.compute-1.amazonaws.com
注意:要向环境配置中添加一个keypair,实例的终止保护必须关闭,因为Beanstalk将尝试终止当前实例并使用keypair启动新实例。
注意:如果有什么东西不工作,检查Beanstalk应用程序/环境中的“Events”选项卡,找出哪里出了问题。
以上答案有点陈旧。
首先创建一个密钥对,然后将其附加到Elastic Beanstalk环境。
创建密钥对的步骤
登录AWS 服务—> EC2 .单击“确定” 在左边的网络和安全下选择密钥对 选择创建新的密钥对,键入密钥名称,然后单击创建。 密钥将自动下载到您的系统中。
将创建的密钥对附加到Elastic Beanstalk环境的步骤
AWS ->服务->弹性豆茎 选择您的环境并单击左侧的配置。 在“配置概览”中选择“安全性”中的“修改”。 在“虚拟机权限”下选择我们创建的密钥对。 单击“保存”,然后单击“保存配置”。
这将花费一些时间反映到您的EC2实例。
根据您的环境配置,在为您的环境创建的EC2实例上可能没有公共IP地址。你可以通过以下方法查看:
转到EC2控制台 找到实例并检查Description选项卡 如果没有公共IP…… 在导航中单击“弹性IPs” 单击“分配新地址” 选择亚马逊的泳池 点击分配
最后,选择您的新EIP并从操作菜单中选择关联地址。将该IP与EC2实例关联。您现在应该能够使用eb ssh连接。
可以通过执行eb ssh——setup命令重置连接详细信息。
推荐文章
- 运行ssh后立即执行命令
- 我如何知道我在S3桶中存储了多少对象?
- S3 Bucket操作不应用于任何资源
- 将AWS凭证传递给Docker容器的最佳方法是什么?
- 当权限为S3时,AccessDenied for ListObjects for S3 bucket:*
- 电子邮件地址未验证(AWS SES)
- ssh -L转发多个端口
- 使用Boto3将S3对象作为字符串打开
- 从PKCS12文件中提取公钥/私钥,供以后在SSH-PK-Authentication中使用
- 在python shell中按方向键时看到转义字符
- 如何忽略ansible SSH的真实性检查?
- 如何移除SSH密钥?
- AWS VPC - Internet网关vs. NAT
- 如何在AWS Lambda中加载npm模块?
- 亚马逊S3 -如何修复“我们计算的请求签名与签名不匹配”错误?