【发布时间】:2015-12-13 02:14:23
【问题描述】:
我已使用默认安全组配置我的服务器,该安全组具有以下入站规则:
| Type | Protocol | Port Range | Source |
| All TCP | TCP | 0-65535 | 0.0.0.0/0 |
| All UDP | UDP | 0-65535 | 0.0.0.0/0|
使用这些规则,netstat 显示以下输出:
netstat -atn
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:5432 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:1113 0.0.0.0:* LISTEN
tcp 0 0 10.0.1.31:2113 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:2113 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:11300 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:11211 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:6379 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN
tcp6 0 0 :::22 :::* LISTEN
tcp6 0 0 :::5432 :::* LISTEN
tcp6 0 0 :::3306 :::* LISTEN
tcp6 0 0 :::6379 :::* LISTEN
所以,理论上,我应该能够使用 TCP 从任何 IP 地址连接到端口 1113。但这不起作用,IP 地址显示为已过滤,您可以在以下输出中看到:
似乎正常(打开且未过滤)的唯一端口是 22 和 80。这是我使用 nmap 测试它们时得到的输出:
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
1113/tcp filtered ltp-deepspace
2113/tcp filtered unknown
3306/tcp filtered mysql
6379/tcp filtered unknown
我什至尝试为我的 IP 和端口 1113 添加自定义入站规则,但结果是一样的。
我怀疑某些防火墙在我的实例中阻止了这些端口上的流量,但我不确定如何检查。
需要注意的一点是,此实例位于 Amazon VPC 中。但是,此实例的网络 ACL 具有以下入站规则,应该允许来自所有端口的收入通信:
|Rule # | Type | Protocol | Port Range | Source | Allow / Deny |
| 100 | ALL Traffic | ALL | ALL | 0.0.0.0/0 |ALLOW |
对这里可能出现的问题有什么想法吗?
非常感谢您的帮助!
【问题讨论】:
-
这是通过互联网网关还是通过 NAT 实例连接?
-
@VernBurton 这是一个互联网网关,我相信。不知道如何检查。
-
lsof -i:3306的输出是什么样的? -
输出为空(对于 3306 和 1113,以防万一您指的是那个端口)。唯一有输出的端口是 80 端口。
-
基于此,当您在防火墙上打开端口时,服务器上似乎没有实际运行以接受连接的服务。 lsof -i 向我们显示正在使用这些端口的程序和服务,并且它没有显示任何内容意味着没有任何东西响应 1113 的呼叫。您希望连接什么服务?可以用 netcat 监听那个端口然后测试吗?
标签: networking tcp amazon-ec2 ports amazon-vpc