所有 IP、Id 等均来自测试环境并将被删除,因此请注意,它们来自实际生产环境。
我有一个 EC2 安全组,并且为传入流量打开了四个端口:
我有一个使用此安全组的 EC2 实例。我创建了一个 Docker 容器并在端口 8001 上运行它:
docker run -dit --restart unless-stopped -p 8001:8001 --name tce-docker_container tce-docker
当我尝试通过浏览器的 8001 端口访问我的服务器()时,连接被拒绝。
我去了一个开放端口检查器(),得到了以下结果:
事实上,尽管我已经打开了端口 443 和 8001,但只有端口 80 和 22 被视为开放。
我可以在浏览器中正常访问我的 EC2 实例上的默认端口 80,并且也可以通过 ssh 进入我的实例,证明端口 80 和 22 是开放的。
为什么我的端口 443 和 8001 没有打开?我还可以在 AWS 中检查什么来打开这些端口(或任何其他端口)?
谢谢
2
最佳答案
1
您的 EC2 实例本身上的防火墙或安全规则可能阻止了您的流量。您可以尝试检查实例上的 iptables 或其他防火墙是否处于活动状态,因为尽管 EC2 安全组中有设置,但这些防火墙可能会限制访问,因此请根据需要修改或禁用防火墙规则。如果您确信 EC2 安全组提供了足够的保护,您可以考虑禁用 iptables(如果它已经处于活动状态)以防止冲突
1
-
不太可能。防火墙会导致超时,连接被拒绝表示没有任何内容在监听给定的端口。
–
|
–
–
|