【发布时间】:2017-12-27 16:41:10
【问题描述】:
这是我与 EC2 实例关联的安全组:
如果我在端口 80、8080、8888 上启动服务侦听,它可以工作,但在 9000、9042、9999 上失败。
我没有找到任何具有此限制的文档。
有什么想法吗?
【问题讨论】:
-
来源必须是 0.0.0.0/32
标签: amazon-web-services amazon-ec2
这是我与 EC2 实例关联的安全组:
如果我在端口 80、8080、8888 上启动服务侦听,它可以工作,但在 9000、9042、9999 上失败。
我没有找到任何具有此限制的文档。
有什么想法吗?
【问题讨论】:
标签: amazon-web-services amazon-ec2
删除现有规则并将以下规则添加到您的安全组以使其正常工作。(前提是您的应用程序在这些端口中正常服务)
规则 1:TCP , 9000, 0.0.0.0/0
规则 2:TCP , 9042, 0.0.0.0/0
规则 3:TCP , 9999, 0.0.0.0/0
【讨论】:
sudo netstat -anp |grep 9000
tcp6 0 0 0.0.0.0:9042 :::* LISTEN 32119/java
我假设来源是您的 ip/您公司的 ip。
您应该始终set your security group to be as specific as possible。 在这种情况下,您应该具有以下入站规则:
8.8.8.8/32 是你的 ip 的占位符
TCP 80 8.8.8.8/32
TCP 8080 8.8.8.8/32
TCP 8888 8.8.8.8/32
TCP 9000 8.8.8.8/32
TCP 9042 8.8.8.8/32
TCP 9999 8.8.8.8/32
确保实例/应用程序正在侦听所需的端口等。
还要确保 9000,9042,9999 上的应用程序在收到请求时不会尝试访问任何内容,并且无法访问(由于 sg 出站限制或连接问题)。尝试根据您在尝试连接时得到的error 确定出了什么问题(基于我假设 http 流量的端口)。
(据我所知)在您提供的上下文中对 sg 没有任何限制。我使用具有相同规则的组和具有 20 条规则的组而没有问题。
【讨论】: