kvikon 2019-08-15
本文介绍在Ubuntu 18.04及其他版本Linux 下 Nmap 网络扫描工具的安装与使用方法。
Nmap(“Network Mapper”)是一个用于网络探索和安全审计的开源工具。它被设计用来快速扫描大型网络,尽管它在单主机上运行良好。
NMAP是一款流行的网络扫描和嗅探工具也是一个强大的端口扫描类安全测评工具,被广泛应用在安全扫描,nmap是一个好用的网络工具,在生产和开发中也经常用到,主要做端口开放性检测和局域网信息的查看收集等,不同Linux发行版包管理中一般也带有nmap工具,这里选择去官网下载源码包进行编译安装,nmap的官网是是:https://namp.org。
Nmap支持在Windows、Unix/Linux以及MAC OS平台下运行。它的设计目标是快速地扫描大型网络,当然用它扫描单个主机也没有问题。Nmap以新颖的方式使用原始IP报文来发现网络上有哪些主机、那些主机提供什么服务(应用程序名和版本)、那些服务运行在什么操作系统(包括版本信息)、它们使用什么类型的报文过滤器/防火墙,以及一堆其它功能。
方法1:
Ubuntu Linux使用 apt-get install nmap 可以直接安装 nmap。LaMont Jones 维护了Nmap 的 deb 安装包。稳定的版本在 http://packages.debian.org/stable/nmap, 开发的版本(不稳定的版本)在 http://packages.debian.org/unstable/nmap 和 http://packages.debian.org/unstable/zenmap。
方法2:
方法3:
另一种方式是下载 RPM 格式的 nmap 包,然后使用 alien 工具把他转换成 debian 包,再用 dpkg 工具安装。
步骤如下:
1.安装 alien do apt-get install alien
2.下载 Nmap RPMs 从 https://nmap.org/download.html。这里用 nmap-7.80-1.x86_64.rpm
3.验证下载的完整性,参考:https://nmap.org/book/install.html#inst-integrity
4.转化 sudo alien nmap-7.80-1.x86_64.rpm
5.安装 sudo dpkg --install nmap_7.80-1_amd64.deb
方法4:
检测是否安装成功:
附:
Linux RPM源和二进制文件
许多流行的Linux发行版(RedHat,Mandrake,SUSE等)使用RPM包管理系统来快速简便地进行二进制包安装。 我们已经编写了一个安装RPM包的详细指南,尽管这些简单的命令通常可以解决问题:
rpm -vhU https://nmap.org/dist/nmap-7.80-1.x86_64.rpm
rpm -vhU https://nmap.org/dist/zenmap-7.80-1.noarch.rpm
rpm -vhU https://nmap.org/dist/ncat-7.80-1.x86_64.rpm
rpm -vhU https://nmap.org/dist/nping-0.7.80-1.x86_64.rpm
您也可以自己下载并安装RPM:
最新稳定版:
x86-64 (64-bit Linux) Nmap RPM: nmap-7.80-1.x86_64.rpm
x86-64 (64-bit Linux) Ncat RPM: ncat-7.80-1.x86_64.rpm
x86-64 (64-bit Linux) Nping RPM: nping-0.7.80-1.x86_64.rpm
可选的 Zenmap GUI (所有平台): zenmap-7.80-1.noarch.rpm
RPM源码(包括Nmap,Zenmap,Ncat和Nping): nmap-7.80-1.src.rpm
扫描语法及类型
命令格式
nmap [扫描类型] [选项] <扫描目标...>
其中,扫描目标可以是主机名、ip地址或网络地址等,多个目标以空格分隔;常用的选项有"-p"、"-n",分别用来指定扫描的端口、禁止反向解析(以加快扫描速度);扫描类型决定着扫描的方式,也直接影响扫描结果。
比较常用的几种扫面类型:
示例
*针对本机进行扫描,检测开放了哪些常用的TCP端口、UDP端口
Nmap done: 1 IP address (1 host up) scanned in 1.33 seconds
如下图:
在扫描结果中,STATE列若为 open 则表示开放状态,为 filtered 表示可能被防火墙过滤,为 closed 表示端口为关闭状态。
*检测 192.168.10.0/24 网段中哪些主机提供FTP服务
nmap -p 21 192.168.10.0/24
*快速检测192.168.10.0/24网段中有哪些存活主机(能 ping 通)
nmap -n -sP 192.168.10.0/24
*检测IP地址位于192.168.10.100~200 的主机是否开启文件共享
nmap -p 139,445 192.168.10.100-200
下面,nmap工具的基本用法:
扫描特定主机:#nmap 192.168.1.2
扫描整个子网:#nmap 192.168.1.1/24
扫描多个目标:#nmap 192.168.1.2 192.168.1.5
扫描一个范围内主机:#nmap 192.168.1.1-100 (扫描IP地址为192.168.1.1-192.168.1.100内的所有主机)
向目标发送两个ping数据包:#nmap -sn -PE -c 2 --send-ip 192.168.1.1