map即网络映射器对Linux系统/网络管理员来说是一个开源且非常通用的工具。Nmap用于在远程机器上探测网络,执行安全扫描,网络审计和搜寻开放端口。它会扫描远程在线主机,该主机的操作系统,包过滤器和开放的端口。

我将用两个不同的部分来涵盖大部分NMAP的使用方法,这是nmap关键的第一部分。在下面的设置中,我使用两台已关闭防火墙的服务器来测试Nmap命令的工作情况。

  1. 192.168.0.100 – server1.tecmint.com
  2. 192.168.0.101 – server2.tecmint.com

NMAP命令用法

  1. # nmap [Scan Type(s)] [Options] {target specification}

如何在Linux下安装NMAP

现在大部分Linux的发行版本像Red Hat,CentOS,Fedoro,Debian和Ubuntu在其默认的软件包管理库(即Yum 和 APT)中都自带了Nmap,这两种工具都用于安装和管理软件包和更新。在发行版上安装Nmap具体使用如下命令。

  1. # yum install nmap      [on Red Hat based systems]
  2. $ sudo apt-get install nmap [on Debian based systems]

一旦你安装了最新的nmap应用程序,你就可以按照本文中提供的示例说明来操作。

1. 用主机名和IP地址扫描系统

Nmap工具提供各种方法来扫描系统。在这个例子中,我使用server2.tecmint.com主机名来扫描系统找出该系统上所有开放的端口,服务和MAC地址。

使用主机名扫描

  1. [root@server1 ~]# nmap server2.tecmint.com
  2. Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 15:42 EST
  3. Interesting ports on server2.tecmint.com (192.168.0.101):
  4. Not shown: 1674 closed ports
  5. PORT     STATE SERVICE
  6. 22/tcp   open  ssh
  7. 80/tcp   open  http
  8. 111/tcp  open  rpcbind
  9. 957/tcp  open  unknown
  10. 3306/tcp open  mysql
  11. 8888/tcp open  sun-answerbook
  12. MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
  13. Nmap finished: 1 IP address (1 host up) scanned in 0.415 seconds
  14. You have new mail in /var/spool/mail/root

使用IP地址扫描

  1. [root@server1 ~]# nmap 192.168.0.101
  2. Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-18 11:04 EST
  3. Interesting ports on server2.tecmint.com (192.168.0.101):
  4. Not shown: 1674 closed ports
  5. PORT     STATE SERVICE
  6. 22/tcp   open  ssh
  7. 80/tcp   open  http
  8. 111/tcp  open  rpcbind
  9. 958/tcp  open  unknown
  10. 3306/tcp open  mysql
  11. 8888/tcp open  sun-answerbook
  12. MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
  13. Nmap finished: 1 IP address (1 host up) scanned in 0.465 seconds
  14. You have new mail in /var/spool/mail/root

2.扫描使用“-v”选项

你可以看到下面的命令使用“ -v “选项后给出了远程机器更详细的信息。

  1. [root@server1 ~]# nmap -v server2.tecmint.com
  2. Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 15:43 EST
  3. Initiating ARP Ping Scan against 192.168.0.101 [1 port] at 15:43
  4. The ARP Ping Scan took 0.01s to scan 1 total hosts.
  5. Initiating SYN Stealth Scan against server2.tecmint.com (192.168.0.101) [1680 ports] at 15:43
  6. Discovered open port 22/tcp on 192.168.0.101
  7. Discovered open port 80/tcp on 192.168.0.101
  8. Discovered open port 8888/tcp on 192.168.0.101
  9. Discovered open port 111/tcp on 192.168.0.101
  10. Discovered open port 3306/tcp on 192.168.0.101
  11. Discovered open port 957/tcp on 192.168.0.101
  12. The SYN Stealth Scan took 0.30s to scan 1680 total ports.
  13. Host server2.tecmint.com (192.168.0.101) appears to be up ... good.
  14. Interesting ports on server2.tecmint.com (192.168.0.101):
  15. Not shown: 1674 closed ports
  16. PORT     STATE SERVICE
  17. 22/tcp   open  ssh
  18. 80/tcp   open  http
  19. 111/tcp  open  rpcbind
  20. 957/tcp  open  unknown
  21. 3306/tcp open  mysql
  22. 8888/tcp open  sun-answerbook
  23. MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
  24. Nmap finished: 1 IP address (1 host up) scanned in 0.485 seconds
  25. Raw packets sent: 1681 (73.962KB) | Rcvd: 1681 (77.322KB)

3.扫描多台主机

你可以简单的在Nmap命令后加上多个IP地址或主机名来扫描多台主机。

  1. [root@server1 ~]# nmap 192.168.0.101 192.168.0.102 192.168.0.103
  2. Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 16:06 EST
  3. Interesting ports on server2.tecmint.com (192.168.0.101):
  4. Not shown: 1674 closed ports
  5. PORT     STATE SERVICE
  6. 22/tcp   open  ssh
  7. 80/tcp   open  http
  8. 111/tcp  open  rpcbind
  9. 957/tcp  open  unknown
  10. 3306/tcp open  mysql
  11. 8888/tcp open  sun-answerbook
  12. MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
  13. Nmap finished: 3 IP addresses (1 host up) scanned in 0.580 seconds

4.扫描整个子网

你可以使用*通配符来扫描整个子网或某个范围的IP地址。

  1. [root@server1 ~]# nmap 192.168.0.*
  2. Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 16:11 EST
  3. Interesting ports on server1.tecmint.com (192.168.0.100):
  4. Not shown: 1677 closed ports
  5. PORT    STATE SERVICE
  6. 22/tcp  open  ssh
  7. 111/tcp open  rpcbind
  8. 851/tcp open  unknown
  9. Interesting ports on server2.tecmint.com (192.168.0.101):
  10. Not shown: 1674 closed ports
  11. PORT     STATE SERVICE
  12. 22/tcp   open  ssh
  13. 80/tcp   open  http
  14. 111/tcp  open  rpcbind
  15. 957/tcp  open  unknown
  16. 3306/tcp open  mysql
  17. 8888/tcp open  sun-answerbook
  18. MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
  19. Nmap finished: 256 IP addresses (2 hosts up) scanned in 5.550 seconds
  20. You have new mail in /var/spool/mail/root

从上面的输出可以看到,nmap扫描了整个子网,给出了网络中当前网络中在线主机的信息。

5.使用IP地址的最后一个字节扫描多台服务器

你可以简单的指定IP地址的最后一个字节来对多个IP地址进行扫描。例如,我在下面执行中扫描了IP地址192.168.0.101,192.168.0.102和192.168.0.103。

  1. [root@server1 ~]# nmap 192.168.0.101,102,103
  2. Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 16:09 EST
  3. Interesting ports on server2.tecmint.com (192.168.0.101):
  4. Not shown: 1674 closed ports
  5. PORT     STATE SERVICE
  6. 22/tcp   open  ssh
  7. 80/tcp   open  http
  8. 111/tcp  open  rpcbind
  9. 957/tcp  open  unknown
  10. 3306/tcp open  mysql
  11. 8888/tcp open  sun-answerbook
  12. MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
  13. Nmap finished: 3 IP addresses (1 host up) scanned in 0.552 seconds
  14. You have new mail in /var/spool/mail/root

6. 从一个文件中扫描主机列表

如果你有多台主机需要扫描且所有主机信息都写在一个文件中,那么你可以直接让nmap读取该文件来执行扫描,让我们来看看如何做到这一点。

创建一个名为“nmaptest.txt ”的文本文件,并定义所有你想要扫描的服务器IP地址或主机名。

  1. [root@server1 ~]# cat > nmaptest.txt
  2. localhost
  3. server2.tecmint.com
  4. 192.168.0.101

接下来运行带“iL” 选项的nmap命令来扫描文件中列出的所有IP地址。

  1. [root@server1 ~]# nmap -iL nmaptest.txt
  2. Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-18 10:58 EST
  3. Interesting ports on localhost.localdomain (127.0.0.1):
  4. Not shown: 1675 closed ports
  5. PORT    STATE SERVICE
  6. 22/tcp  open  ssh
  7. 25/tcp  open  smtp
  8. 111/tcp open  rpcbind
  9. 631/tcp open  ipp
  10. 857/tcp open  unknown
  11. Interesting ports on server2.tecmint.com (192.168.0.101):
  12. Not shown: 1674 closed ports
  13. PORT     STATE SERVICE
  14. 22/tcp   open  ssh
  15. 80/tcp   open  http
  16. 111/tcp  open  rpcbind
  17. 958/tcp  open  unknown
  18. 3306/tcp open  mysql
  19. 8888/tcp open  sun-answerbook
  20. MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
  21. Interesting ports on server2.tecmint.com (192.168.0.101):
  22. Not shown: 1674 closed ports
  23. PORT     STATE SERVICE
  24. 22/tcp   open  ssh
  25. 80/tcp   open  http
  26. 111/tcp  open  rpcbind
  27. 958/tcp  open  unknown
  28. 3306/tcp open  mysql
  29. 8888/tcp open  sun-answerbook
  30. MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
  31. Nmap finished: 3 IP addresses (3 hosts up) scanned in 2.047 seconds

7.扫描一个IP地址范围

你可以在nmap执行扫描时指定IP范围。

  1. [root@server1 ~]# nmap 192.168.0.101-110
  2. Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 16:09 EST
  3. Interesting ports on server2.tecmint.com (192.168.0.101):
  4. Not shown: 1674 closed ports
  5. PORT     STATE SERVICE
  6. 22/tcp   open  ssh
  7. 80/tcp   open  http
  8. 111/tcp  open  rpcbind
  9. 957/tcp  open  unknown
  10. 3306/tcp open  mysql
  11. 8888/tcp open  sun-answerbook
  12. MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
  13. Nmap finished: 10 IP addresses (1 host up) scanned in 0.542 seconds

8.排除一些远程主机后再扫描

在执行全网扫描或用通配符扫描时你可以使用“-exclude”选项来排除某些你不想要扫描的主机。

  1. [root@server1 ~]# nmap 192.168.0.* --exclude 192.168.0.100
  2. Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 16:16 EST
  3. Interesting ports on server2.tecmint.com (192.168.0.101):
  4. Not shown: 1674 closed ports
  5. PORT     STATE SERVICE
  6. 22/tcp   open  ssh
  7. 80/tcp   open  http
  8. 111/tcp  open  rpcbind
  9. 957/tcp  open  unknown
  10. 3306/tcp open  mysql
  11. 8888/tcp open  sun-answerbook
  12. MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
  13. Nmap finished: 255 IP addresses (1 host up) scanned in 5.313 seconds
  14. You have new mail in /var/spool/mail/root

9.扫描操作系统信息和路由跟踪

使用Nmap,你可以检测远程主机上运行的操作系统和版本。为了启用操作系统和版本检测,脚本扫描和路由跟踪功能,我们可以使用NMAP的“-A“选项。

  1. [root@server1 ~]# nmap -A 192.168.0.101
  2. Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 16:25 EST
  3. Interesting ports on server2.tecmint.com (192.168.0.101):
  4. Not shown: 1674 closed ports
  5. PORT     STATE SERVICE VERSION
  6. 22/tcp   open  ssh     OpenSSH 4.3 (protocol 2.0)
  7. 80/tcp   open  http    Apache httpd 2.2.3 ((CentOS))
  8. 111/tcp  open  rpcbind  2 (rpc #100000)
  9. 957/tcp  open  status   1 (rpc #100024)
  10. 3306/tcp open  mysql   MySQL (unauthorized)
  11. 8888/tcp open  http    lighttpd 1.4.32
  12. MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
  13. No exact OS matches for host (If you know what OS is running on it, see http://www.insecure.org/cgi-bin/nmap-submit.cgi).
  14. TCP/IP fingerprint:
  15. SInfo(V=4.11%P=i686-redhat-linux-gnu%D=11/11%Tm=52814B66%O=22%C=1%M=080027)
  16. TSeq(Class=TR%IPID=Z%TS=1000HZ)
  17. T1(Resp=Y%DF=Y%W=16A0%ACK=S++%Flags=AS%Ops=MNNTNW)
  18. T2(Resp=N)
  19. T3(Resp=Y%DF=Y%W=16A0%ACK=S++%Flags=AS%Ops=MNNTNW)
  20. T4(Resp=Y%DF=Y%W=0%ACK=O%Flags=R%Ops=)
  21. T5(Resp=Y%DF=Y%W=0%ACK=S++%Flags=AR%Ops=)
  22. T6(Resp=Y%DF=Y%W=0%ACK=O%Flags=R%Ops=)
  23. T7(Resp=Y%DF=Y%W=0%ACK=S++%Flags=AR%Ops=)
  24. PU(Resp=Y%DF=N%TOS=C0%IPLEN=164%RIPTL=148%RID=E%RIPCK=E%UCK=E%ULEN=134%DAT=E)
  25. Uptime 0.169 days (since Mon Nov 11 12:22:15 2013)
  26. Nmap finished: 1 IP address (1 host up) scanned in 22.271 seconds

从上面的输出你可以看到,Nmap显示出了远程主机操作系统的TCP / IP协议指纹,并且更加具体的显示出远程主机上的端口和服务。

10.启用Nmap的操作系统探测功能

使用选项“-O”和“-osscan-guess”也帮助探测操作系统信息。

  1. [root@server1 ~]# nmap -O server2.tecmint.com
  2. Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 17:40 EST
  3. Interesting ports on server2.tecmint.com (192.168.0.101):
  4. Not shown: 1674 closed ports
  5. PORT     STATE SERVICE
  6. 22/tcp   open  ssh
  7. 80/tcp   open  http
  8. 111/tcp  open  rpcbind
  9. 957/tcp  open  unknown
  10. 3306/tcp open  mysql
  11. 8888/tcp open  sun-answerbook
  12. MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
  13. No exact OS matches for host (If you know what OS is running on it, see http://www.insecure.org/cgi-bin/nmap-submit.cgi).
  14. TCP/IP fingerprint:
  15. SInfo(V=4.11%P=i686-redhat-linux-gnu%D=11/11%Tm=52815CF4%O=22%C=1%M=080027)
  16. TSeq(Class=TR%IPID=Z%TS=1000HZ)
  17. T1(Resp=Y%DF=Y%W=16A0%ACK=S++%Flags=AS%Ops=MNNTNW)
  18. T2(Resp=N)
  19. T3(Resp=Y%DF=Y%W=16A0%ACK=S++%Flags=AS%Ops=MNNTNW)
  20. T4(Resp=Y%DF=Y%W=0%ACK=O%Flags=Option -O and -osscan-guess also helps to discover OS
  21. R%Ops=)
  22. T5(Resp=Y%DF=Y%W=0%ACK=S++%Flags=AR%Ops=)
  23. T6(Resp=Y%DF=Y%W=0%ACK=O%Flags=R%Ops=)
  24. T7(Resp=Y%DF=Y%W=0%ACK=S++%Flags=AR%Ops=)
  25. PU(Resp=Y%DF=N%TOS=C0%IPLEN=164%RIPTL=148%RID=E%RIPCK=E%UCK=E%ULEN=134%DAT=E)
  26. Uptime 0.221 days (since Mon Nov 11 12:22:16 2013)
  27. Nmap finished: 1 IP address (1 host up) scanned in 11.064 seconds
  28. You have new mail in /var/spool/mail/root

11.扫描主机侦测防火墙

下面的命令将扫描远程主机以探测该主机是否使用了包过滤器或防火墙。

  1. [root@server1 ~]# nmap -sA 192.168.0.101
  2. Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 16:27 EST
  3. All 1680 scanned ports on server2.tecmint.com (192.168.0.101) are UNfiltered
  4. MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
  5. Nmap finished: 1 IP address (1 host up) scanned in 0.382 seconds
  6. You have new mail in /var/spool/mail/root

12.扫描主机检测是否有防火墙保护

扫描主机检测其是否受到数据包过滤软件或防火墙的保护。

  1. [root@server1 ~]# nmap -PN 192.168.0.101
  2. Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 16:30 EST
  3. Interesting ports on server2.tecmint.com (192.168.0.101):
  4. Not shown: 1674 closed ports
  5. PORT     STATE SERVICE
  6. 22/tcp   open  ssh
  7. 80/tcp   open  http
  8. 111/tcp  open  rpcbind
  9. 957/tcp  open  unknown
  10. 3306/tcp open  mysql
  11. 8888/tcp open  sun-answerbook
  12. MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
  13. Nmap finished: 1 IP address (1 host up) scanned in 0.399 seconds

13.找出网络中的在线主机

使用“-sP”选项,我们可以简单的检测网络中有哪些在线主机,该选项会跳过端口扫描和其他一些检测。

  1. [root@server1 ~]# nmap -sP 192.168.0.*
  2. Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-18 11:01 EST
  3. Host server1.tecmint.com (192.168.0.100) appears to be up.
  4. Host server2.tecmint.com (192.168.0.101) appears to be up.
  5. MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
  6. Nmap finished: 256 IP addresses (2 hosts up) scanned in 5.109 seconds

14.执行快速扫描

你可以使用“-F”选项执行一次快速扫描,仅扫描列在nmap-services文件中的端口而避开所有其它的端口。

  1. [root@server1 ~]# nmap -F 192.168.0.101
  2. Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 16:47 EST
  3. Interesting ports on server2.tecmint.com (192.168.0.101):
  4. Not shown: 1234 closed ports
  5. PORT     STATE SERVICE
  6. 22/tcp   open  ssh
  7. 80/tcp   open  http
  8. 111/tcp  open  rpcbind
  9. 3306/tcp open  mysql
  10. 8888/tcp open  sun-answerbook
  11. MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
  12. Nmap finished: 1 IP address (1 host up) scanned in 0.322 seconds

15.查看Nmap的版本

你可以使用“-V”选项来检测你机子上Nmap的版本。

  1. [root@server1 ~]# nmap -V
  2. Nmap version 4.11 ( http://www.insecure.org/nmap/ )
  3. You have new mail in /var/spool/mail/root

16.顺序扫描端口

使用“-r”选项表示不会随机的选择端口扫描。

  1. [root@server1 ~]# nmap -r 192.168.0.101
  2. Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 16:52 EST
  3. Interesting ports on server2.tecmint.com (192.168.0.101):
  4. Not shown: 1674 closed ports
  5. PORT     STATE SERVICE
  6. 22/tcp   open  ssh
  7. 80/tcp   open  http
  8. 111/tcp  open  rpcbind
  9. 957/tcp  open  unknown
  10. 3306/tcp open  mysql
  11. 8888/tcp open  sun-answerbook
  12. MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
  13. Nmap finished: 1 IP address (1 host up) scanned in 0.363 seconds

17.打印主机接口和路由

你可以使用nmap的“–iflist”选项检测主机接口和路由信息。

  1. [root@server1 ~]# nmap --iflist
  2. Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 17:07 EST
  3. ************************INTERFACES************************
  4. DEV  (SHORT) IP/MASK          TYPE     UP MAC
  5. lo   (lo)    127.0.0.1/8      loopback up
  6. eth0 (eth0)  192.168.0.100/24 ethernet up 08:00:27:11:C7:89
  7. **************************ROUTES**************************
  8. DST/MASK      DEV  GATEWAY
  9. 192.168.0.0/0 eth0
  10. 169.254.0.0/0 eth0

从上面的输出你可以看到,nmap列举出了你系统上的接口以及它们各自的路由信息。

18.扫描特定的端口

使用Nmap扫描远程机器的端口有各种选项,你可以使用“-P”选项指定你想要扫描的端口,默认情况下nmap只扫描TCP端口。

  1. [root@server1 ~]# nmap -p 80 server2.tecmint.com
  2. Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 17:12 EST
  3. Interesting ports on server2.tecmint.com (192.168.0.101):
  4. PORT   STATE SERVICE
  5. 80/tcp open  http
  6. MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
  7. Nmap finished: 1 IP address (1 host up) sca

19.扫描TCP端口

你可以指定具体的端口类型和端口号来让nmap扫描。

  1. [root@server1 ~]# nmap -p T:8888,80 server2.tecmint.com
  2. Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 17:15 EST
  3. Interesting ports on server2.tecmint.com (192.168.0.101):
  4. PORT     STATE SERVICE
  5. 80/tcp   open  http
  6. 8888/tcp open  sun-answerbook
  7. MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
  8. Nmap finished: 1 IP address (1 host up) scanned in 0.157 seconds

20.扫描UDP端口

  1. [root@server1 ~]# nmap -sU 53 server2.tecmint.com
  2. Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 17:15 EST
  3. Interesting ports on server2.tecmint.com (192.168.0.101):
  4. PORT     STATE SERVICE
  5. 53/udp   open  http
  6. 8888/udp open  sun-answerbook
  7. MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
  8. Nmap finished: 1 IP address (1 host up) scanned in 0.157 seconds

21.扫描多个端口

你还可以使用选项“-P”来扫描多个端口。

  1. [root@server1 ~]# nmap -p 80,443 192.168.0.101
  2. Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-18 10:56 EST
  3. Interesting ports on server2.tecmint.com (192.168.0.101):
  4. PORT    STATE  SERVICE
  5. 80/tcp  open   http
  6. 443/tcp closed https
  7. MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
  8. Nmap finished: 1 IP address (1 host up) scanned in 0.190 seconds

22.扫描指定范围内的端口

您可以使用表达式来扫描某个范围内的端口。

  1. [root@server1 ~]#  nmap -p 80-160 192.168.0.101

23.查找主机服务版本号

我们可以使用“-sV”选项找出远程主机上运行的服务版本。

  1. [root@server1 ~]# nmap -sV 192.168.0.101
  2. Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 17:48 EST
  3. Interesting ports on server2.tecmint.com (192.168.0.101):
  4. Not shown: 1674 closed ports
  5. PORT     STATE SERVICE VERSION
  6. 22/tcp   open  ssh     OpenSSH 4.3 (protocol 2.0)
  7. 80/tcp   open  http    Apache httpd 2.2.3 ((CentOS))
  8. 111/tcp  open  rpcbind  2 (rpc #100000)
  9. 957/tcp  open  status   1 (rpc #100024)
  10. 3306/tcp open  mysql   MySQL (unauthorized)
  11. 8888/tcp open  http    lighttpd 1.4.32
  12. MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
  13. Nmap finished: 1 IP address (1 host up) scanned in 12.624 seconds

24.使用TCP ACK (PA)和TCP Syn (PS)扫描远程主机

有时候包过滤防火墙会阻断标准的ICMP ping请求,在这种情况下,我们可以使用TCP ACK和TCP Syn方法来扫描远程主机。

  1. [root@server1 ~]# nmap -PS 192.168.0.101
  2. Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 17:51 EST
  3. Interesting ports on server2.tecmint.com (192.168.0.101):
  4. Not shown: 1674 closed ports
  5. PORT     STATE SERVICE
  6. 22/tcp   open  ssh
  7. 80/tcp   open  http
  8. 111/tcp  open  rpcbind
  9. 957/tcp  open  unknown
  10. 3306/tcp open  mysql
  11. 8888/tcp open  sun-answerbook
  12. MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
  13. Nmap finished: 1 IP address (1 host up) scanned in 0.360 seconds
  14. You have new mail in /var/spool/mail/root

25.使用TCP ACK扫描远程主机上特定的端口

  1. [root@server1 ~]# nmap -PA -p 22,80 192.168.0.101
  2. Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 18:02 EST
  3. Interesting ports on server2.tecmint.com (192.168.0.101):
  4. PORT   STATE SERVICE
  5. 22/tcp open  ssh
  6. 80/tcp open  http
  7. MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
  8. Nmap finished: 1 IP address (1 host up) scanned in 0.166 seconds
  9. You have new mail in /var/spool/mail/root

26. 使用TCP Syn扫描远程主机上特定的端口

  1. [root@server1 ~]# nmap -PS -p 22,80 192.168.0.101
  2. Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 18:08 EST
  3. Interesting ports on server2.tecmint.com (192.168.0.101):
  4. PORT   STATE SERVICE
  5. 22/tcp open  ssh
  6. 80/tcp open  http
  7. MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
  8. Nmap finished: 1 IP address (1 host up) scanned in 0.165 seconds
  9. You have new mail in /var/spool/mail/root

27.执行一次隐蔽的扫描

  1. [root@server1 ~]# nmap -sS 192.168.0.101
  2. Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 18:10 EST
  3. Interesting ports on server2.tecmint.com (192.168.0.101):
  4. Not shown: 1674 closed ports
  5. PORT     STATE SERVICE
  6. 22/tcp   open  ssh
  7. 80/tcp   open  http
  8. 111/tcp  open  rpcbind
  9. 957/tcp  open  unknown
  10. 3306/tcp open  mysql
  11. 8888/tcp open  sun-answerbook
  12. MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
  13. Nmap finished: 1 IP address (1 host up) scanned in 0.383 seconds
  14. You have new mail in /var/spool/mail/root

28.使用TCP Syn扫描最常用的端口

  1. [root@server1 ~]# nmap -sT 192.168.0.101
  2. Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 18:12 EST
  3. Interesting ports on server2.tecmint.com (192.168.0.101):
  4. Not shown: 1674 closed ports
  5. PORT     STATE SERVICE
  6. 22/tcp   open  ssh
  7. 80/tcp   open  http
  8. 111/tcp  open  rpcbind
  9. 957/tcp  open  unknown
  10. 3306/tcp open  mysql
  11. 8888/tcp open  sun-answerbook
  12. MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
  13. Nmap finished: 1 IP address (1 host up) scanned in 0.406 seconds
  14. You have new mail in /var/spool/mail/root

29.执行TCP空扫描以骗过防火墙

  1. [root@server1 ~]# nmap -sN 192.168.0.101
  2. Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-11-11 19:01 EST
  3. Interesting ports on server2.tecmint.com (192.168.0.101):
  4. Not shown: 1674 closed ports
  5. PORT     STATE         SERVICE
  6. 22/tcp   open|filtered ssh
  7. 80/tcp   open|filtered http
  8. 111/tcp  open|filtered rpcbind
  9. 957/tcp  open|filtered unknown
  10. 3306/tcp open|filtered mysql
  11. 8888/tcp open|filtered sun-answerbook
  12. MAC Address: 08:00:27:D9:8E:D7 (Cadmus Computer Systems)
  13. Nmap finished: 1 IP address (1 host up) scanned in 1.584 seconds
  14. You have new mail in /var/spool/mail/root

以上就是NMAP的基本使用,我会在第二部分带来NMAP更多的创意选项。至此,敬请关注我们,不要忘记分享您的宝贵意见。

给Linux系统管理员准备的Nmap命令的29个实用范例的更多相关文章

  1. [转]给Linux系统管理员准备的Nmap命令的29个实用范例+ tsysv 系统服务器管理器

    原文链接:http://os.51cto.com/art/201401/428152.htm Nmap即网络映射器对Linux系统/网络管理员来说是一个开源且非常通用的工具.Nmap用于在远程机器上探 ...

  2. (转)Nmap命令的29个实用范例

    Nmap命令的29个实用范例 原文:http://os.51cto.com/art/201401/428152.htm Nmap即网络映射器对Linux系统/网络管理员来说是一个开源且非常通用的工具. ...

  3. 给Linux系统/网络管理员准备的Nmap命令的29个实用范例

    我将用两个不同的部分来涵盖大部分NMAP的使用方法,这是nmap关键的第一部分.在下面的设置中,我使用两台已关闭防火墙的服务器来测试Nmap命令的工作情况. 192.168.0.100 – serve ...

  4. Nmap命令的29个实用范例

    Nmap即网络映射器对Linux系统/网络管理员来说是一个开源且非常通用的工具.Nmap用于在远程机器上探测网络,执行安全扫描,网络审计和搜寻开放端口.它会扫描远程在线主机,该主机的操作系统,包过滤器 ...

  5. Linux系统管理员不可不知的命令:sudo

    对Linux系统管理员或高级用户而言,sudo是必不可少的最重要的命令之一.当我们想要运行重要任务时,sudo提供了安全的提升权限.请耐心读本文,看看sudo能为你做些什么. sudo是个统管一切的命 ...

  6. Linux 命令的20个实用范例,入门必看!

    Tips: 达内Linux云计算免费课程火热抢报中,点击文末“阅读原文”快速抢! Linux中一个基本命令是ls.没有这个命令,我们会在浏览目录条目时会遇到困难.这个命令必须被每个学习Linux的人知 ...

  7. ls命令的20个实用范例

    contents ls -l -h -lhS -l --block-size=M -a -d */ -g -G -n --color=never -i -p -r -R -t ls ~ ls --ve ...

  8. 【转】ls 命令的 20 个实用范例

    Linux中一个基本命令是ls.没有这个命令,我们会在浏览目录条目时会遇到困难.这个命令必须被每个学习Linux的人知道. ls是什么 ls命令用于列出文件和目录.默认上,他会列出当前目录的内容.带上 ...

  9. Linux系统管理员命令:sudo

    sudo是个统管一切的命令.它的字面意思是代表“超级用户才能做!”(super user do!)对Linux系统管理员或高级用户而言,它是必不可少的最重要的命令之一.你可曾有过这样的经历:在终端中试 ...

随机推荐

  1. L0/L1/L2范数(转载)

    一.首先说一下范数的概念: 向量的范数可以简单形象的理解为向量的长度,或者向量到零点的距离,或者相应的两个点之间的距离. 向量的范数定义:向量的范数是一个函数||x||,满足非负性||x|| > ...

  2. Nginx软件优化【转】

    转自 Nginx软件优化 - 惨绿少年 - 博客园 Nginx软件优化 - 惨绿少年 - 博客园 https://www.cnblogs.com/clsn/p/8484559.html 1.1 Ngi ...

  3. igmp组播测试环境搭建

    2.4G无线组播测试环境搭建: (1)组播源: VLC 或者 pixstream (2)无线: 2.4G AP (3)客户端PC: VLC播放器 有线直连 无线2.4G PC(组播源pixstream ...

  4. zabbix3.0.4通过自定义shell脚本添加对关键日志文件的监控

    zabbix添加对自定义无规则日志文件的监控 项目背景及思路: zabbix自带有针对日志文件的监控,自带的监控只能监控到指定文件或者正则匹配的固定日志文件,但当需要监控的文件名没有规律的时候自带监控 ...

  5. 重装windows系统后配置Anaconda

    给电脑换了系统,十分担心anaconda需要重装.还好以下方法完美解决.(同是win10 64位) 原始anaconda安装路径:D:\ProgramData\Anaconda3  (不能有空格哦) ...

  6. Python-生产者消费模型 线程

    7.生产者消费者模型(*****)(思聪吃热狗代码) 在并发编程中使用生产者和消费者模式能够解决绝大多数并发问题. 该模式通过平衡生产线程和消费线程的工作能力来提高程序的整体处理数据的速度 为什么要使 ...

  7. Android 颜色透明度换算

    每次开发的时候,UI在设计图中标注的颜色都是类似于#FF0000(红色),这倒没什么,但是呢后面却标注了30%的透明度,这下抓狂了,透明度怎么计算?不用着急,不用你算,收藏我这篇文章即可. 颜色简介 ...

  8. Android设计模式-观察者模式

    原文地址 http://blog.csdn.net/qq_25806863/article/details/69218968 观察者模式是一种使用频率非常高的设计模式,最常用的地方就是订阅-发布系统. ...

  9. poj 3461 (模式串T在主串S中出现的次数)

    求模式串在主串中出现的次数Sample Input 3BAPCBAPCAZAAZAZAZAVERDIAVERDXIVYERDIANSample Output 130 #include <iost ...

  10. 【LOJ】#150. 挑战多项式

    原题链接 多项式全家桶!快乐!(好像少个除法,不过有除法好像不太快乐) (说真的这是我第一次写exp和开根...水平不行.. 从最基础要实现的操作开始吧.. 多项式取模\(x^n\) 这个..很简单了 ...