Nmap命令的29个实用范例

原文:http://os.51cto.com/art/201401/428152.htm

Nmap即网络映射器对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更多的创意选项。至此,敬请关注我们,不要忘记分享您的宝贵意见。

原文链接: Tecmint   翻译: 伯乐在线敏敏
译文链接: http://blog.jobbole.com/54595/

【编辑推荐】

(转)Nmap命令的29个实用范例的更多相关文章

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

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

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

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

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

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

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

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

  5. 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 ...

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

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

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

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

  8. 给Linux系统/网络管理员的nmap的29个实用例子

    Nmap亦称为Network Mapper(网络映射)是一个开源并且通用的用于Linux系统/网络管理员的工具.nmap用于探查网络.执行安全扫描.网络核查并且在远程机器上找出开放端口.它可以扫描在线 ...

  9. nmap命令总结

    一.nmap是什么 nmap是一款网络扫描和主机检测的非常有用的工具,不局限于仅仅收集信息和枚举,同时可以用来作为一个漏洞探测器或安全扫描器.它可以适用于winodws,linux,mac等操作系统. ...

随机推荐

  1. 找BUG

    找一找BUG 一段代码,实现一个pop,push,和getmin都是O(1)的方法. 最初源代码 伙伴代码如下,代码的地址可以通过这个访问: Ubuntu Pastebin https://paste ...

  2. Java50道经典习题-程序37 报数

    题目:有n个人围成一圈,顺序排号.从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位.分析:最后留下的是第n号那位 import java.util.Scanne ...

  3. C#实现类只实例化一次(被多个类访问调用)

    C#简单写法如下: public class Singleton {     private static Singleton _instance = null;     private Single ...

  4. 对XML文档进行修改

    怎样对XML文档时行修改.Insus.NET在此举个简单的例子.XML文档,就以这篇博文:http://www.cnblogs.com/insus/p/3274220.html 如果我们想对其中一个节 ...

  5. vncviewer 命令行使用

    一.命令行输入密码登录 /usr/bin/vncviewer 192.168.210.80:3此时弹出输入密码框,输入密码即可登录 二.命令行免输入密码登录 (a) /usr/bin/vncviewe ...

  6. SEVERE: One or more listeners failed to start.

    Full details will be found in the appropriate container log file 错误日志在/home/dela/.IntelliJIdea2017.1 ...

  7. 10.20 olinr

    感谢olinr提供md文件 免得我整理格式了 1.求助 (help.cpp/c/pas) [问题背景] 马上就要noip了,lrt同志\(\displaystyle\begin{vmatrix}\te ...

  8. HDU6299 Balanced Sequence (多校第一场1002) (贪心)

    Balanced Sequence Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others ...

  9. 【Leetcode】Permutation Sequence

    The set [1,2,3,…,n] contains a total of n! unique permutations. By listing and labeling all of the p ...

  10. Django 13 admin和auth系统、权限问题

    一.auth系统 auth系统的数据表 #User:User是auth模块中维护用户信息的关系模式(继承了models.Model), 数据库中该表被命名为auth_user. #Group:User ...