python实现端口状态扫描
2017-07-09 10:10
941 查看
要实现端口状态扫描需要用到python的namp模块。
先到地址:https://pypi.python.org/pypi/python-nmap下载namp的软件包。
我这里下载的是0.6.1版本,OS是centos 7。
执行如下命令安装namp模块:
cd python-nmap-0.6.1
python setup install
python实现代码如下:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#python version: Python 2.7.5
import sys
import nmap
scan_row=[]
input_data=raw_input("please input hosts and port: ")
scan_row=input_data.split(" ")
if len(scan_row) !=2:
print 'input error! for example:192.168.18.128 80,443,22'
sys.exit(0)
hosts=scan_row[0]
port=scan_row[1]
try:
nm=nmap.PortScanner()
except nmap.PortScannerError:
print('nmap not found', sys.exc_info()[0])
sys.exit(0)
except:
print("unexcepten error:", sys.exc_info()[0])
sys.exit(0)
try:
nm.scan(hosts=hosts,arguments='-v -sS -p'+port)
except Exception,e:
print "scan error: "+str(e)
for host in nm.all_hosts():
print "--------------------------------------------"
print('Host : %s (%s)' % (host, nm[host].hostname()))
print('State: %s' % nm[host].state())
for proto in nm[host].all_protocols():
print('-------------')
print('Protocol : %s' % proto)
lport=nm[host][proto].keys()
lport.sort()
for port in lport:
print('port : %s\tstate :%s' % (port,nm[host][proto][port]['state']))
附件:http://down.51cto.com/data/2366825
先到地址:https://pypi.python.org/pypi/python-nmap下载namp的软件包。
我这里下载的是0.6.1版本,OS是centos 7。
执行如下命令安装namp模块:
cd python-nmap-0.6.1
python setup install
python实现代码如下:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#python version: Python 2.7.5
import sys
import nmap
scan_row=[]
input_data=raw_input("please input hosts and port: ")
scan_row=input_data.split(" ")
if len(scan_row) !=2:
print 'input error! for example:192.168.18.128 80,443,22'
sys.exit(0)
hosts=scan_row[0]
port=scan_row[1]
try:
nm=nmap.PortScanner()
except nmap.PortScannerError:
print('nmap not found', sys.exc_info()[0])
sys.exit(0)
except:
print("unexcepten error:", sys.exc_info()[0])
sys.exit(0)
try:
nm.scan(hosts=hosts,arguments='-v -sS -p'+port)
except Exception,e:
print "scan error: "+str(e)
for host in nm.all_hosts():
print "--------------------------------------------"
print('Host : %s (%s)' % (host, nm[host].hostname()))
print('State: %s' % nm[host].state())
for proto in nm[host].all_protocols():
print('-------------')
print('Protocol : %s' % proto)
lport=nm[host][proto].keys()
lport.sort()
for port in lport:
print('port : %s\tstate :%s' % (port,nm[host][proto][port]['state']))
附件:http://down.51cto.com/data/2366825
相关文章推荐
- python端口扫描系统实现方法
- 使用python实现扫描端口示例
- 使用python实现扫描端口示例
- Python实现局域网IP端口扫描
- Python小练习-实现简单端口扫描~
- python实现的多线程端口扫描功能示例
- python端口扫描系统实现方法
- python调用Namp扫描端口状态
- Python2.x实现多线程主机端口扫描(入门)
- Python实现网段固定端口扫描
- Python 第三方模块pythonnmap来实现高效的端口扫描
- Python实现对一个网络段扫描及端口扫描
- Python实现的端口扫描功能示例
- Python之——实现高效的端口扫描
- python实现zabbix批量监控WEB网站和批量监控主机端口
- python文件操作(2)--分析扫描得到的日志文件把文件状态导入Excel表格
- 一个用来扫描主机端口的AIR 程序 (在Flex 4+AIR 2.0/Beta 2 下实现)
- 基于Python实现GIT上传敏感信息预扫描工具
- python实现简单Nmap扫描
- Python扫描IP段查看指定端口是否开放的方法