服务器之家

专注于服务器技术!
当前位置:首页 > 服务器安全 > 安全工具

Linux Nmap扫描命令的使用方法

发布时间:2014-04-22 来源:服务器之家

nmap 是一个网络探测工具开源和分析工具。它的目的是快速扫描大型网络,虽然对单个主机工作正常。Nmap的使用原始IP数据包 以新颖的方式来确定哪些主机在网络上可用,什么服务(应用程序名称和版本)的主机产品,什么操作系统(和OS版本)他们正在运行,什么类型的 数据包过滤器/防火墙正在使用,和其他几十个特点。虽然Nmap通常用于安全管理,许多系统和网络管理员发现它很有用常规任务如网络库存,管理服务升级计划,并监视主机或服务的正常运行时间。

     其中关键的信息是端口的扫描,显示的是该端口对应的协议、服务名称和状态,当然nmap扫描也受到一些防火墙的限制,使nmap无法确切的判断服务的开启与否,但是这个nmap确实很好用的,尤其是系统管理员来说!

常用的扫描类型:

1、-sP(ping的方式扫描,检查主机在线与否,不发送任何报文到目的主机,想知道目标主机是否运行,而不想进行其它扫描,这扫描方式很常用)

2、-sL(仅仅列网段内出主机的状态、端口等信息,查询端口的话用 -p port,port1......)

3、 -PS/PA/PU [portlist](根据给定的端口用TCP或UDP报文探测:对于root用户,这个选项让nmap使用SYN包而不是ACK包来对目标主机进行扫描。如果主机正在运行就返回一个RST包(或者一个SYNACK包))

4、-sS(TCP同步扫描(TCP SYN):发出一个TCP同步包(SYN),然后等待回对方应)

5、 -sF -sF -sN(秘密FIN数据包扫描、圣诞树 (Xmas Tree)、空(Null)扫描模式使用-sF、-sX或者-sN扫描显示所有的端口都是关闭的,而使用SYN扫 描显示有打开的端口,你可以确定目标主机可能运行的是Windwos系统)

6、-sU(UDP扫描:nmap首先向目标主机的每个端口发出一个0字节的UDP包,如果我们收到端口不可达的ICMP消息,端口就是关闭的,否则我们就假设它是打开的)

7、-P0 (No ping)(这个选项跳过Nmap扫描)

8、-PE/PP/PM

扫描类型的控制

1、sW (对滑动窗口的扫描)

2、-sR(RPC扫描)

3、 -PE; -PP; -PM (ICMP 类型的ping)

4、-PR (ARP 类型的ping-n (无 DNS 解析)
5、-R (为所有的目标做DNS解析)

6、-sV(对服务版本的检测)
常用的对主机的操作

1、-A或者-O(对操作系统的检测)

2、-v(增加信息的详尽程度)

3、-p(ports的范围)

 一个扫描的实例

[root@localhost ~]# nmap -sP 59.69.131.0/24(检查这个网段的主机哪个在线,下边是部分截取)

Host 59.69.131.250 appears to be up.(这个主机在线)
Host 59.69.131.251 appears to be up.
Host 59.69.131.252 seems to be a subnet broadcast address (returned 1 extra pings). Note -- the actual IP also responded.(这个很可能用于一个子网的最后一个ip地址:用于广播(broadcast),所以还可以以此来推算子网掩码)
Host 59.69.131.253 appears to be up.
Host 59.69.131.254 appears to be up.
Host 59.69.131.255 appears to be up.
Nmap finished: 256 IP addresses (56 hosts up) scanned in 82.089 seconds

[root@localhost ~]# nmap  -O 59.69.131.255(检测这个主机的操作系统类型和开放的端口)

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2011-03-12 06:19 CST
Warning:  OS detection will be MUCH less reliable because we did not find at least 1 open and 1 closed TCP port
Interesting ports on 59.69.131.255:
Not shown: 1665 closed ports
PORT     STATE    SERVICE
113/tcp  filtered auth
135/tcp  filtered msrpc
137/tcp  filtered netbios-ns
138/tcp  filtered netbios-dgm
139/tcp  filtered netbios-ssn
389/tcp  filtered ldap
445/tcp  filtered microsoft-ds
539/tcp  filtered apertus-ldp
593/tcp  filtered http-rpc-epmap
1023/tcp filtered netvenuechat
1025/tcp filtered NFS-or-IIS
1068/tcp filtered instl_bootc
1720/tcp filtered H.323/Q.931
4444/tcp filtered krb524
6667/tcp filtered irc
Too many fingerprints match this host to give specific OS details

Nmap finished: 1 IP address (1 host up) scanned in 29.099 seconds

这个实现的功能太多了暂时没发现操作系统的确切类型(换一个ip会有不同的结果哦)

最后总结下常用的nmap参数

1、nmap -sP 59.69.139.0/24(扫描在线的主机)

2、nmap -sS 59.69.139-10 -p 80,22,23,52-300(SYN的扫描方式,可以加ip和端口的限制)
3、nmap -sV 59.69.139.1 -p1-65535(探测端口的服务和版本(Version) )
4、nmap -O 192.168.1.1或者nmap  -A 192.168.1.1(探测操作系统的类型和版本)
以上是常用的操作,更详尽的可以找男人(man)啦!