我有一个奇怪的问题,其中我能够使用RDP和HTTP连接到AWS VPC的公共子网中的EC2实例。但是,通过RDP成功连接到实例后,我无法从实例连接到Internet。
a)我创建了一个非默认的AWS VPC,并将一个IGW与其关联。 VPC的地址范围是10.0.0.0/16。创建了一个地址空间为10.0.5.0/24的子网
c)为了使子网公开,我决定保留主路由表,并创建一个带有以下条目的附加路由表
10.0.0.0/16本地 0.0.0.0/0 igw
d)该路由表与子网10.0.5.0/24相关联。这使其成为公共子网
e)将NACL设置为允许: 入站流量:针对IPV4和NACL的HTTP(80),HTTPS(80),SSH(22),RDP(3389) 出站流量 ALL TRAFFIC ALL PROTOCOL ALL PORT范围目的地0.0.0.0/0
f)安全组设置为:
入站所有流量全部全部0.0.0.0/0 出站所有流量全部全部0.0.0.0/0
g)我在公共子网中创建了一个EC2实例,并为其分配了Elastic EIP。我可以使用RDP对此进行连接,并且可以通过在本地浏览器中键入EC2的公共DNS名称来访问IIS欢迎页面。但是,从打开IE并尝试访问任何流行网站的实例来看,我无法访问Internet。我总是收到“无法访问此页面”
h)我禁用Windows防火墙并尝试访问Internet。但是仍然没有用。
i) tracert 输出仅在所有行中显示“请求超时”。
任何帮助将不胜感激。
感谢和问候 戈文德
答案 0 :(得分:0)
首先,确认满足以下条件:
实例子网中的路由表具有到 互联网网关。附加到实例的安全组 弹性网络接口必须允许以下端口上的出站流量 端口:HTTP流量的端口80端口HTTP流量的端口443 与以下内容相关联的网络访问控制列表(ACL): 实例所在的子网。这些网络ACL必须具有 允许端口80和443上的入站和出站流量的规则。
您无需打开所有端口即可启用传出的Web流量。
https://aws.amazon.com/premiumsupport/knowledge-center/ec2-connect-internet-gateway/
答案 1 :(得分:-1)
最后,我能够解决此问题。我添加了
所有TCP TCP(6)0-65535 0.0.0.0/0允许
作为NACL中的INBOUND规则。我立即能够从Ec2实例中的浏览器访问Internet。
但是,我不认为应该打开所有端口以使用公共子网中EC2实例上的浏览器。有更好的方法吗?
在这种情况下,我是否可以考虑设置转发代理服务器作为基于浏览器的传出流量的解决方案?请建议