自动化网络发现的工具。

DiscoNet的Python项目详细描述


disconnect扫描指定的子网和ip,以查找可以使用 提供凭据并执行任意命令列表。

扫描网络和收集命令输出的过程是建立在一个多进程上的 架构,因此disconnect可以快速扫描管理子网和环回子网, 用输出填充xlsx工作簿。

安装

使用最新版本的setuptools和pip安装disconnect:

$ pip install --upgrade setuptools pip
$ pip install DiscoNet

您还可以选择安装disconnect gui,它用于kivy库。要安装它, 首先,您需要按照Kivy Installation Instructions操作您的平台。 然后使用gui标记安装discoet:

$ pip install DiscoNet[kivy]

OS X和Windows的二进制发行版可用here

用法

gui和命令行应用程序接受几个输入参数:
  • 工作簿:输出xlsx文件的路径
  • 子网:要扫描的网络和IP地址的逗号分隔列表
  • 用户名:ssh用户名
  • 密码:ssh密码
  • 命令:在gui中每行一个,或从命令行作为参数传递
示例:

打开gui应用程序:

$ python -m DiscoNet

从命令行扫描并创建发现工作簿:

$ python -m DiscoNet.discoveryscan workbook subnets username password commands

其中包括一个方便的脚本,以便gui和命令行实用程序可以分别 相应地使用以下命令运行:

$ DiscoNet
$ discoveryscan workbook subnets username password commands ...

对每个命令使用双引号,并根据需要包括尽可能多的引号,例如:

$ discoveryscan out.xlsx 172.16.0.0/24 admin password "show ver" "show run"

API

要在您自己的项目中使用该模块,请参考API Documentation

示例:

从python启动发现扫描:

from DiscoNet.discoveryscan import DiscoveryScan

d = DiscoveryScan(workbook, subnets, username, password, [commands, ...])
d.start()

commands参数应该是命令字符串的列表。启动方法将 阻止,直到扫描完成。可选地,start方法可以是非阻塞的 当提供回调函数时:

from DiscoNet.discoveryscan import DiscoveryScan

def cb()
    #callback function
    return

d = DiscoveryScan(workbook, subnets, username, password, [commands, ...])
d.start(cb)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
ws-consumer服务地址中的java动态属性   java如何比较整数列表,然后按升序排序?   javascript我正在使用java脚本调用一个函数,但它没有调用代码下面的方法,也没有调用secretitnames()函数   在文本窗格中多次使用Java insertIcon图标   JavaMSAL安卓。AuthenticationActivity完成,但用于身份验证请求的线程池线程仍处于等待状态   if语句中的java多范围比较   java toString()表示输出   java如何在jcstrest测试中生成指令重新排序   java我怎样才能运行它?   web应用程序中使用Hibernate和Spring的java问题   如何将字符串数据写入Java文本文件   如何在java命令提示符下运行已签名的jar文件?   java从我的菜单调用RCP应用程序   java如何等待Canvas/GraphicsContext完成任务,然后再继续执行代码块?