docker ps显示与nmap不同的端口

时间:2017-06-12 22:07:09

标签: docker ports nmap

docker ps表示转发了三个端口:

CONTAINER ID        IMAGE                        COMMAND                  CREATED             STATUS              PORTS                                                      NAMES
06584d4ad44e        quay.io/coreos/etcd:v3.1.8   "etcd -name etcd01..."   2 days ago          Up 3 minutes        0.0.0.0:2379-2380->2379-2380/tcp, 0.0.0.0:4001->4001/tcp   etcd01

nmap -sT 127.0.0.1只能找到4001

Starting Nmap 7.40 ( https://nmap.org ) at 2017-06-13 00:06 CEST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.0011s latency).
Not shown: 969 closed ports, 30 filtered ports
PORT     STATE SERVICE
4001/tcp open  newoak

怎么来的?我可以用其他方式验证端口是否在那里吗?

1 个答案:

答案 0 :(得分:3)

默认情况下,

nmap 不会扫描所有端口。

如您所见,它只扫描了1000个端口:969(已关闭)+ 30(已过滤)+ 1(已打开)。

要真正扫描所有端口,您应指定使用-p选项,如下所示:-p1-65535。可能需要一段时间,但是......自定义选项以使其更快。您需要以root身份运行TCP SYN扫描。默认的TCP连接速度较慢。

不要使用 nmap 来了解当您在主机中时打开哪些端口。使用 netstat (已弃用),如netstat -tunlp ss (它接受与 netstat 相同的大部分选项):{{ 1}}。选项是nmemonic:

  

-t for TCP

     

-u for UDP

     

-n for numeric

     

-l用于监听端口

     

-p表示PID