python配置nmap

简介: python配置nmap

环境: python 2.7.13

Windows和Linux默认都是不安装python-nmap的,我们得手动安装

一、python-nmap的安装
linux:

wge t http://xael.org/pages/python-nmap-0.6.1.tar.gz
tar -zxvf python-nmap-0.6.1.tar.gz
cd python-nmap-0.6.1
python setup.py install
Windows: pip install python-nmap

二、python-nmap模块的使用

1.portScanner()类
portScanner()类用于实现对指定主机进行端口扫描

nmScan=nmap.PortScanner() #实例化
scan( host , port , args ) 方法:以指定方式扫描指定主机或网段的指定端口

参数:

host : 要扫描的主机或网段,可以是一个单独的ip:192.168.10.10 ;也可以是一个小范围网段:192.168.10.10-20 ;也可以是一个大网段:192.168.10.0/24
port : 可选参数,要扫描的端口,多个端口用逗号隔开,如:20,21,22,23,24
args :可选参数,要扫描的方式

import nmap
nm = nmap.PortScanner()
nm.scan('192.168.10.10-100', '22,21','-sV')
也可以这样:

nm.scan(hosts='192.168.1.0/24', arguments='-n -sP -PE -PA21,23,80,3389')
command_line() 方法:返回的扫描方法映射到具体的nmap命令行,也就是我们上面执行的nm.scan()命令,对应的具体的nmap的命令

import nmap
nm = nmap.PortScanner()
nm.scan('192.168.10.10-100', '22,21','-sV')
a=nm.command_line()
print(a)

nmap -oX - -p 20,21 -sV 192.168.125.134
scaninfo() 方法:返回nmap扫描信息,格式为字典类型

import nmap
nm = nmap.PortScanner()
nm.scan('192.168.10.10-100', '22,21','-sV')
a=nm.scaninfo()
print(a)

{'tcp': {'services': '20-21', 'method': 'syn'}}
all_hosts() 方法:返回nmap扫描的主机清单,格式为列表类型

import nmap
nm = nmap.PortScanner()
nm.scan('192.168.10.10-12', '22,21','-sV')

['192.168.10.10','192.168.10.11','192.168.10.12']
查看扫描主机的详细信息: nm['192.168.125.134']

import nmap
nm=nmap.PortScanner()
nm.scan('192.168.125.134','445')
a=nm['192.168.125.134'] #返回主机的详细信息
print(a)

{'status': {'state': 'up', 'reason': 'arp-response'},
'hostnames': [{'type': 'PTR', 'name': 'bogon'}],
'vendor': {'00:0C:29:F6:2B:F0': 'VMware'},
'addresses': {'mac': '00:0C:29:F6:2B:F0', 'ipv4': '192.168.125.134'},
'tcp': {445: {'product': 'Microsoft Windows 7 - 10 microsoft-ds', 'state': 'open', 'version': '', 'name': 'microsoft-ds', 'conf': '10', 'extrainfo': 'workgroup: WORKGROUP', 'reason': 'syn-ack', 'cpe': 'cpe:/o:microsoft:windows'}}}
查看主机扫描的端口包含的协议(TCP/UDP):nmap['192.168.125.134'].all_protocols() 返回列表型数据

1
2
3
4
5
6
7
import nmap
nm=nmap.PortScanner()
nm.scan('192.168.125.134','445')
a=nm['192.168.125.134'].all_protocols() #返回主机扫描的端口包含的协议
print(a)

['tcp']
查看扫描的端口哪些端口提供了TCP协议:nmap'192.168.125.134'

import nmap
nm=nmap.PortScanner()
nm.scan('192.168.125.134','445')
a=nm'192.168.125.134' #返回主机扫描的端口哪些端口包含了TCP协议,返回具体信息
b=nm'192.168.125.134'.keys() #只返还端口,返回列表型数据
print(a)
print(b)

{445: {'product': 'Microsoft Windows 7 - 10 microsoft-ds', 'state': 'open', 'version': '', 'name': 'microsoft-ds', 'conf': '10', 'extrainfo': 'workgroup: WORKGROUP', 'reason': 'syn-ack', 'cpe': 'cpe:/o:microsoft:windows'}}
[445]
查看该端口是否提供了TCP协议:nmap['192.168.125.134'].has_tcp(445) ,返回布尔类型的数据

import nmap
nm=nmap.PortScanner()
nm.scan('192.168.125.134','445')
a=nm['192.168.125.134'].has_tcp(445) #判断该端口是否提供TCP协议
print(a)

True
查看该协议下端口的状态:nmap'192.168.125.134'445

import nmap
nm=nmap.PortScanner()
nm.scan('192.168.125.134','445')
a=nm'192.168.125.134'445
print(a)

open

目录
相关文章
|
3天前
|
安全 编译器 开发者
Python语言的配置解释器
Python语言的配置解释器
|
3天前
|
IDE Linux 开发工具
技术小白如何配置Python环境
技术小白如何配置Python环境
|
3天前
|
JSON 开发工具 数据格式
基于Python开发的火车票分析助手(源码+可执行程序+程序配置说明书+程序使用说明书)
基于Python开发的火车票分析助手(源码+可执行程序+程序配置说明书+程序使用说明书)
|
3天前
|
数据挖掘 开发工具 Python
基于Python开发的企业编码生成系统(源码+可执行程序+程序配置说明书+程序使用说明书)
基于Python开发的企业编码生成系统(源码+可执行程序+程序配置说明书+程序使用说明书)
|
1天前
|
前端开发 Unix Linux
Sublime Text 3配置 Python 开发环境
【5月更文挑战第7天】本篇 Huazie 介绍了 Sublime Text 3 配置 Python 开发环境的相关内容,感兴趣的朋友赶紧配置起来,有任何问题可以随时评论区沟通。
21 1
Sublime Text 3配置 Python 开发环境
|
3天前
|
网络安全 数据安全/隐私保护 Python
【专栏】如何使用 Python 编写脚本批量备份交换机配置
【4月更文挑战第28天】本文介绍如何使用 Python 编写脚本批量备份交换机配置。主要步骤包括了解交换机命令和接口,安装 `paramiko` 库,获取交换机登录信息。脚本实现分为建立 SSH 连接,执行备份命令并保存结果。示例脚本中,定义了 `backup_switch_config` 函数遍历交换机列表进行备份,每次备份后等待一段时间。此方法能有效提高网络管理效率。
|
3天前
|
运维 监控 Serverless
Serverless 应用引擎产品使用之阿里函数计算中在自定义环境下用debian10运行django,用官方层的python3.9,配置好环境变量后发现自定义层的django找不到了如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
23 3
|
3天前
|
IDE Linux 开发工具
Python安装与配置
Python安装与配置
30 0
|
3天前
|
存储 API Python
python之代理ip的配置与调试
python之代理ip的配置与调试
|
3天前
|
缓存 中间件 数据安全/隐私保护
在Python中实现代理服务器的配置和使用方法
在Python中实现代理服务器的配置和使用方法