我正在使用新的(2019年6月)EC2 browser SSH connect feature封装到EC2中。这非常方便,因为我在Windows上,并且使用AWS auth配置PuTTy很烦人,而旧版浏览器SSH产品对我来说却行不通。
我可以通过如下所示的AWS控制台连接到EC2实例
,如果为任何IP地址启用SSH,它都可以完美运行。但是,当我将SSH安全组设置为我的IP地址时,SSH外壳只会挂起。
我已经确认这是我正确的公共IP地址,并且我也尝试使用我的私有IPV4地址-祝您好运。但是,将CIDR块设置为任何位置时,连接都可以正常工作。
可能是这个新功能在某处使用了代理外壳,所以我必须允许访问该中介的地址。
我是通过家庭办公室台式机而不是企业或复杂环境来执行此操作的,而是使用我的根AWS凭据(是的,我知道这是最糟糕的做法)。
答案 0 :(得分:2)
啊!出色的新 AWS EC2实例连接服务。很高兴看到您正在使用它!
EC2实例连接通过在Web浏览器(在计算机上运行)和后端EC2实例连接服务之间建立HTTPS连接来工作。然后,EC2 Instance Connect建立到目标实例的“大多数情况下” SSH连接。 (稍有不同是将临时键推到实例的方式。)
结果是,该连接似乎来自EC2实例连接服务,而不是您自己的计算机!
因此,EC2实例上的安全组不应接受来自“我的IP”的连接,而应允许来自EC2实例连接服务的入站连接。
您可以从AWS IP Address Ranges获取相关的IP地址范围。这是一个JSON文件,为每个AWS服务提供IP范围。
例如,这是悉尼地区的范围:
{
"ip_prefix": "13.239.158.0/29",
"region": "ap-southeast-2",
"service": "EC2_INSTANCE_CONNECT"
},
因此,您可以将此CIDR放在安全组中,它将在悉尼区域内启用EC2实例连接。 (请咨询https://ip-ranges.amazonaws.com/ip-ranges.json文件以获取您所在地区的相关范围。)