网络安全系列之二十九 NMAP的使用
Nmap是一款网络扫描和主机检测的非常有用的工具,适用于Winodws和Linux系统,支持多种扫描技术。
NMAP主要是在Linux环境下使用,RHEL中默认并没有安装,在配置好yum源之后,安装NMAP。
[root@localhost ~]# yum install nmap |
NMAP语法:
nmap <扫描类型> <扫描参数> |
操作演示:
(1)探测网络中的存活主机
nmap -sP 192.168.80.0/24
"-sP"选项表示以ping方式进行扫描,不做进一步测试(如端口扫描或者操作系统探测),非常适用于探测网络中的存活主机。
[root@localhost ~]# nmap -sP 192.168.80.0/24 Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2014-10-21 13:29 CST Host 192.168.80.1 appears to be up. MAC Address: 00:50:56:C0:00:08 (VMWare) Host 192.168.80.2 appears to be up. MAC Address: 00:50:56:F6:C1:1A (VMWare) Host 192.168.80.128 appears to be up. MAC Address: 00:0C:29:3D:B0:4E (VMware) Host 192.168.80.130 appears to be up. Host 192.168.80.254 appears to be up. MAC Address: 00:50:56:FB:E4:16 (VMWare) Nmap finished: 256 IP addresses (5 hosts up) scanned in 9.069 seconds |
(2)扫描某台特定主机
nmap -sS -O 192.168.80.128
"-sS"选项表示执行SYN扫描,-O选项,表示识别远程操作系统。
[root@localhost ~]# nmap -sS -O 192.168.80.128 Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2014-10-21 14:54 CST Interesting ports on 192.168.80.128: Not shown: 1674 closed ports PORT STATE SERVICE 80/tcp open http 135/tcp open msrpc 139/tcp open netbios-ssn 445/tcp open microsoft-ds 1025/tcp open NFS-or-IIS 3389/tcp open ms-term-serv MAC Address: 00:0C:29:3D:B0:4E (VMware) Device type: general purpose Running: Microsoft Windows 2003/.NET OS details: Microsoft Windows 2003 Server SP1 Nmap finished: 1 IP address (1 host up) scanned in 5.384 seconds |
(3)扫描开放指定端口的主机
随意在公网中寻找一个地址段,扫描哪些主机开放了3389端口。
nmap -sS -p 3389 -oG - 221.0.90.0/24 | grep open
"-p"选项指定端口,"-oG"选项表示以一种易于检索的格式记录信息,即每台主机都以单独的行来记录所有信息。
[root@localhost ~]# nmap -sS -p 3389 -oG - 221.0.90.0/24 | grep open Host: 221.0.90.34 () Ports: 3389/open/tcp//ms-term-serv/// Host: 221.0.90.51 () Ports: 3389/open/tcp//ms-term-serv/// Host: 221.0.90.57 () Ports: 3389/open/tcp//ms-term-serv/// Host: 221.0.90.100 () Ports: 3389/open/tcp//ms-term-serv/// Host: 221.0.90.109 () Ports: 3389/open/tcp//ms-term-serv/// Host: 221.0.90.167 () Ports: 3389/open/tcp//ms-term-serv/// Host: 221.0.90.200 () Ports: 3389/open/tcp//ms-term-serv/// Host: 221.0.90.204 () Ports: 3389/open/tcp//ms-term-serv/// Host: 221.0.90.221 () Ports: 3389/open/tcp//ms-term-serv/// |
在nmap的扫描结果中,每个端口的状态可能有:open、filtered、unfiltered。
open状态意味着端口开放;
filtered状态表示端口被防火墙或网络安全软件掩盖了,禁止nmap探测其是否打开。
unfiltered表示端口关闭。
nmap的用法非常多,功能也很强大,这里只是抛砖引玉。另外nmap在Windows中也可以使用,但功能感觉不如Linux中强大。
如在Windows中利用nmap扫描特定主机
扫描结果