使用nmap时,显示的端口显示为已过滤

时间:2015-09-11 10:34:05

标签: docker ibm-cloud

我在Dockerfile中有一个EXPOSE 27017的容器,公共IP和发布端口27017. ice inspect输出中有相关信息:

...
"PortBindings": {
    "27017/tcp": [
        {
            "HostPort": "27017"
        }
    ]
},
...
"NetworkSettings": {
    "Bridge": "",
    "Gateway": "",
    "IpAddress": "172.31.0.16",
    "IpPrefixLen": 0,
    "PortMapping": null,
    "Ports": {
        "27017/tcp": [
            {
                "HostIp": "134.168.18.146",
                "HostPort": "27017"
            }
        ]
    },
    "PublicIpAddress": "134.168.18.146"
},

但是,我无法使用公共IP连接到数据库,nmap将端口27017显示为已过滤。

是否有其他步骤来公开容器的端口?

1 个答案:

答案 0 :(得分:0)

这是因为当nmap向服务器发送带有SYN标志的数据包时。它没有响应,但是当发送SYN到其他关闭端口时,用标志RST,ACK响应。然后,端口27017被过滤,因为防火墙(或自己的服务器)正在阻止响应数据包。

您可以使用 hping

进行检查
  

$ hping3 -c 3 -S -p 27017 IP