1.简单的用法:
代码语言:javascript复制nmap ip -P port
2.常用参数:
代码语言:javascript复制-O:激活操作探测;
-P0:值进行扫描,不ping主机;
-PT:是同TCP的ping;
-sV:探测服务版本信息;
-sP:ping扫描,仅发现目标主机是否存活;
-ps:发送同步(SYN)报文;
-PU:发送udp ping;
-PE:强制执行直接的ICMPping;
-PB:默认模式,可以使用ICMPping和TCPping;
-6:使用IPv6地址;
-v:得到更多选项信息;
-d:增加调试信息地输出;
-oN:以人们可阅读的格式输出;
-oX:以xml格式向指定文件输出信息;
-oM:以机器可阅读的格式输出;
-A:使用所有高级扫描选项;
--resume:继续上次执行完的扫描;
-P:指定要扫描的端口,可以是一个单独的端口,用逗号隔开多个端口,使用“-”表示端口范围;
-e:在多网络接口Linux系统中,指定扫描使用的网络接口;
-g:将指定的端口作为源端口进行扫描;
--ttl:指定发送的扫描报文的生存期;
--packet-trace:显示扫描过程中收发报文统计;
--scanflags:设置在扫描报文中的TCP标志。
3.常见返回状态说明:
状态 | 说明 |
---|---|
open | 应用程序在该端口接受 TCP 连接或者 UDP 报文 |
closed | 关闭的端口对于 nmap 也是可以访问的,它接收 namp 探测报文并作出相应,但没有应用程序在其上监听 |
filtered | 由于包过滤阻止探测报文到达端口,nmap 无法确定该端口是否开放,过滤可能来自专业的防火墙设备、路由规则或者主机上的软件防火墙 |
unfiltered | 未被过滤状态意味着端口可访问,但是 nmap 无法确定它是开放还是关闭,只有用于映射防火墙规则集的 ACK 扫描才会把端口分类到这个状态 |
open|filtered | 无法确定端口是开放还是被过滤,开放的端口不响应就是一个例子,没有响应也可能意味着报文过滤器丢弃了探测报文或者它引起的任何反应。这种状态只会出现在open端口对报文不做回应的扫描类型中,如:udp,ip protocol ,TCP null,fin,和xmas扫描类型 |