python使用nmap管理网络的编程初探
2015-05-05 15:21
459 查看
为了简单期间,我选择编制网段端口扫描的程序如下:
1.环境准备
1.1 在pypi下载python-nmap最新版本python-nmap-0.3.4.tar.gz
1.2 从nmap.org下载nmap软件,最新版本nmap-6.47.dmg
1.3 安装上述两个软件
2. 创建network_port_scan.py如下:
#coding = utf-8
#!/usr/bin/env python
import nmap # import nmap.py module
nm = nmap.PortScanner() # instantiate nmap.PortScanner object
nm.scan('10.0.0.4-254', '2195,2196,8080,9006,389,636') # scan host 10.0.0.4 -10.0.0.254 ports ranged in '2195,2196,8080,9006,389,636'
nm.command_line() # get command line used for the scan : nmap -oX - -p <ports> <IP segment>
nm.scaninfo() # get nmap scan informations {'tcp': {'services': 'ports', 'method': 'connect'}}
nm.all_hosts() # get all hosts that were scanned
# print result as CSV
print(nm.csv())
最简单的端口扫描结果显示如下:
-----csv-----------------------------------------------
host;protocol;port;name;state;product;extrainfo;reason;version;conf;cpe
10.0.0.10;tcp;2195;;filtered;;;no-response;;;
10.0.0.10;tcp;2196;unknown;filtered;;;no-response;;3;
10.0.0.100;tcp;2195;;closed;;;conn-refused;;;
10.0.0.100;tcp;2196;unknown;closed;;;conn-refused;;3;
10.0.0.102;tcp;2195;;filtered;;;no-response;;;
10.0.0.102;tcp;2196;unknown;filtered;;;no-response;;3;
10.0.0.103;tcp;2195;;filtered;;;no-response;;;
10.0.0.103;tcp;2196;unknown;filtered;;;no-response;;3;
10.0.0.106;tcp;2195;;closed;;;conn-refused;;;
10.0.0.106;tcp;2196;unknown;closed;;;conn-refused;;3;
10.0.0.107;tcp;2195;;closed;;;conn-refused;;;
10.0.0.107;tcp;2196;unknown;closed;;;conn-refused;;3;
10.0.0.108;tcp;2195;;closed;;;conn-refused;;;
10.0.0.108;tcp;2196;unknown;closed;;;conn-refused;;3;
10.0.0.109;tcp;2195;;closed;;;conn-refused;;;
10.0.0.109;tcp;2196;unknown;closed;;;conn-refused;;3;
10.0.0.11;tcp;2195;;filtered;;;no-response;;;
10.0.0.11;tcp;2196;unknown;filtered;;;no-response;;3;
10.0.0.110;tcp;2195;;closed;;;conn-refused;;;
10.0.0.110;tcp;2196;unknown;closed;;;conn-refused;;3;
10.0.0.12;tcp;2195;;closed;;;conn-refused;;;
10.0.0.12;tcp;2196;unknown;closed;;;conn-refused;;3;
10.0.0.121;tcp;2195;;closed;;;conn-refused;;;
10.0.0.121;tcp;2196;unknown;closed;;;conn-refused;;3;
10.0.0.122;tcp;2195;;closed;;;conn-refused;;;
10.0.0.122;tcp;2196;unknown;closed;;;conn-refused;;3;
10.0.0.123;tcp;2195;;closed;;;conn-refused;;;
10.0.0.123;tcp;2196;unknown;closed;;;conn-refused;;3;
10.0.0.126;tcp;2195;;closed;;;conn-refused;;;
10.0.0.126;tcp;2196;unknown;closed;;;conn-refused;;3;
10.0.0.127;tcp;2195;;filtered;;;no-response;;;
10.0.0.127;tcp;2196;unknown;filtered;;;no-response;;3;
需要注意的是nmap软件必须安装,否则系统会报错。
1.环境准备
1.1 在pypi下载python-nmap最新版本python-nmap-0.3.4.tar.gz
1.2 从nmap.org下载nmap软件,最新版本nmap-6.47.dmg
1.3 安装上述两个软件
2. 创建network_port_scan.py如下:
#coding = utf-8
#!/usr/bin/env python
import nmap # import nmap.py module
nm = nmap.PortScanner() # instantiate nmap.PortScanner object
nm.scan('10.0.0.4-254', '2195,2196,8080,9006,389,636') # scan host 10.0.0.4 -10.0.0.254 ports ranged in '2195,2196,8080,9006,389,636'
nm.command_line() # get command line used for the scan : nmap -oX - -p <ports> <IP segment>
nm.scaninfo() # get nmap scan informations {'tcp': {'services': 'ports', 'method': 'connect'}}
nm.all_hosts() # get all hosts that were scanned
# print result as CSV
print(nm.csv())
最简单的端口扫描结果显示如下:
-----csv-----------------------------------------------
host;protocol;port;name;state;product;extrainfo;reason;version;conf;cpe
10.0.0.10;tcp;2195;;filtered;;;no-response;;;
10.0.0.10;tcp;2196;unknown;filtered;;;no-response;;3;
10.0.0.100;tcp;2195;;closed;;;conn-refused;;;
10.0.0.100;tcp;2196;unknown;closed;;;conn-refused;;3;
10.0.0.102;tcp;2195;;filtered;;;no-response;;;
10.0.0.102;tcp;2196;unknown;filtered;;;no-response;;3;
10.0.0.103;tcp;2195;;filtered;;;no-response;;;
10.0.0.103;tcp;2196;unknown;filtered;;;no-response;;3;
10.0.0.106;tcp;2195;;closed;;;conn-refused;;;
10.0.0.106;tcp;2196;unknown;closed;;;conn-refused;;3;
10.0.0.107;tcp;2195;;closed;;;conn-refused;;;
10.0.0.107;tcp;2196;unknown;closed;;;conn-refused;;3;
10.0.0.108;tcp;2195;;closed;;;conn-refused;;;
10.0.0.108;tcp;2196;unknown;closed;;;conn-refused;;3;
10.0.0.109;tcp;2195;;closed;;;conn-refused;;;
10.0.0.109;tcp;2196;unknown;closed;;;conn-refused;;3;
10.0.0.11;tcp;2195;;filtered;;;no-response;;;
10.0.0.11;tcp;2196;unknown;filtered;;;no-response;;3;
10.0.0.110;tcp;2195;;closed;;;conn-refused;;;
10.0.0.110;tcp;2196;unknown;closed;;;conn-refused;;3;
10.0.0.12;tcp;2195;;closed;;;conn-refused;;;
10.0.0.12;tcp;2196;unknown;closed;;;conn-refused;;3;
10.0.0.121;tcp;2195;;closed;;;conn-refused;;;
10.0.0.121;tcp;2196;unknown;closed;;;conn-refused;;3;
10.0.0.122;tcp;2195;;closed;;;conn-refused;;;
10.0.0.122;tcp;2196;unknown;closed;;;conn-refused;;3;
10.0.0.123;tcp;2195;;closed;;;conn-refused;;;
10.0.0.123;tcp;2196;unknown;closed;;;conn-refused;;3;
10.0.0.126;tcp;2195;;closed;;;conn-refused;;;
10.0.0.126;tcp;2196;unknown;closed;;;conn-refused;;3;
10.0.0.127;tcp;2195;;filtered;;;no-response;;;
10.0.0.127;tcp;2196;unknown;filtered;;;no-response;;3;
需要注意的是nmap软件必须安装,否则系统会报错。
相关文章推荐
- Java网络编程从入门到精通(15):为什么要使用SocketAddress来管理网络地址
- Python网络编程基础笔记-使用minidom生成XML文件
- Python 网络编程测试-socket初探
- python网络编程:一、前言及socket初探
- python网络编程:一、前言及socket初探
- python学习八:网络编程初探
- python socket网络编程步骤详解(socket套接字使用)
- python socket网络编程步骤详解(socket套接字使用)
- python网络编程之TCP通信实例和socketserver框架使用例子
- python网络编程之TCP通信实例和socketserver框架使用例子
- Python网络编程中的select 和 poll I/O复用的简单使用
- 使用python3.0 编写C/S程序,初识wangpython的网络编程
- Python网络编程:使用pexpect实现快速ssh连接
- python下的复杂网络编程包networkx的安装及使用
- python网络编程之TCP通信实例和socketserver框架使用例子
- 2015/12/14 Python网络编程,TCP/IP客户端和服务器初探
- linux学习笔记4:linux的任务调度,进程管理,mysql的安装和使用,ssh工具的使用,linux网络编程
- 使用Python中的线程进行网络编程的入门教程
- 使用rpclib进行Python网络编程时的注释问题