吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 21267|回复: 222
收起左侧

[Windows] 网工必备华为、华三、思科交换机配置自动采集工具(源码)全新编译的新版本

    [复制链接]
tonekey2016 发表于 2023-4-26 13:32
本帖最后由 tonekey2016 于 2023-5-11 15:45 编辑

申明:为了造福广大网工,此工具完全免费,仅为个人测试使用,此工具仅发布在52pojie平台上,大家请勿商用和上当受骗!!!

之前分享了一款网工自动采集的工具,由于上次分享的是封装过exe的文件没有办法编辑源码,这次带来的是没有封装过的脚本,此脚本可选安装python-3.11.3-amd64主要为了后续方便编辑脚本,此脚本是依赖并调用neimiko组件,组件安装需要CMD pip install netmiko下载相关组件才能使用。

目前支持华为相关设备的自定义命令采集,目前只支持ssh,后续可能会更新telnet和console,本人亲测了华为30多台设备差不多69秒完成里采集,大大解放了双手......

cisco应没有条件测试,目前不知道是否存在BUG!!!


2023-5-10版本概括及说明:

[Asm] 纯文本查看 复制代码
#版本说明,此版本是多进程并行运行,登录设备使用的是SSH方式
#通过devlist.csv文件读取登录信息,通过command.ini文件读取配置采集命令。
#生成以设备描述名称_登录IP_日期.log 命名的配置备份文件,存放在net_config_backup目录下对应的文件夹里


全新版本:

全新版本优化了代码,让代码更加轻量化,支持调取command.ini配置文件,各厂家的采集命令可以通过ini文件进行追加,新增了备份成功和失败的显示等。

不出意外此版本为最后一版目前已经够用了,后续应该不会有太大的改动了。


2023-5-10新版本的效果,如下图所示:

快照6.jpg
快照7.jpg

各厂家支持的列表:
[Asm] 纯文本查看 复制代码
SSH模式:
a10
accedian
adtran_os
adva_fsp150f2
adva_fsp150f3
alcatel_aos
alcatel_sros
allied_telesis_awplus
apresia_aeos
arista_eos
arris_cer
aruba_os
aruba_osswitch
aruba_procurve
audiocode_66
audiocode_72
audiocode_shell
avaya_ers
avaya_vsp
broadcom_icos
brocade_fastiron
brocade_fos
brocade_netiron
brocade_nos
brocade_vdx
brocade_vyos
calix_b6
casa_cmts
cdot_cros
centec_os
checkpoint_gaia
ciena_saos
cisco_asa
cisco_ftd
cisco_ios
cisco_nxos
cisco_s200
cisco_s300
cisco_tp
cisco_viptela
cisco_wlc
cisco_xe
cisco_xr
cloudgenix_ion
coriant
dell_dnos9
dell_force10
dell_isilon
dell_os10
dell_os6
dell_os9
dell_powerconnect
dell_sonic
dlink_ds
eltex
eltex_esr
endace
enterasys
ericsson_ipos
ericsson_mltn63
ericsson_mltn66
extreme
extreme_ers
extreme_exos
extreme_netiron
extreme_nos
extreme_slx
extreme_tierra
extreme_vdx
extreme_vsp
extreme_wing
f5_linux
f5_ltm
f5_tmsh
flexvnf
fortinet
generic
generic_termserver
hillstone_stoneos
hp_comware
hp_procurve
huawei
huawei_olt
huawei_smartax
huawei_vrp
huawei_vrpv8
ipinfusion_ocnos
juniper
juniper_junos
juniper_screenos
keymile
keymile_nos
linux
mellanox
mellanox_mlnxos
mikrotik_routeros
mikrotik_switchos
mrv_lx
mrv_optiswitch
netapp_cdot
netgear_prosafe
netscaler
nokia_srl
nokia_sros
oneaccess_oneos
ovs_linux
paloalto_panos
pluribus
quanta_mesh
rad_etx
raisecom_roap
ruckus_fastiron
ruijie_os
sixwind_os
sophos_sfos
supermicro_smis
teldat_cit
tplink_jetstream
ubiquiti_edge
ubiquiti_edgerouter
ubiquiti_edgeswitch
ubiquiti_unifiswitch
vyatta_vyos
vyos
watchguard_fireware
yamaha
zte_zxros
zyxel_os


软件采集最终效果如图所示:

快照7.jpg


软件目前存在有不足的地方,由于个人能力有限暂时无法对脚本进行优化,需要改进的地方有很多,比如:脚本运行的时候需要安装环境,后面可以做封装自带运行库、各厂家采集的命令可以调取外置文件、采集完成后有错的以日志记录等等,如有大神可完善的话欢迎后面魔改。


无需环境的版本:

链接:https://pan.baidu.com/s/1l7KrZHoXnl5tGBX8qoeCvw?pwd=y9ai
提取码:y9ai

喜欢的话给三连666

免费评分

参与人数 57吾爱币 +51 热心值 +48 收起 理由
花木成畦手自栽 + 1 + 1 谢谢@Thanks!
zy74521 + 1 我很赞同!
SunSHine957 + 1 谢谢@Thanks!
jlzoe + 1 + 1 谢谢@Thanks!
xiaodangjia + 1 + 1 谢谢@Thanks!
splzhk + 1 谢谢@Thanks!
tooknight + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
thundery + 1 + 1 谢谢@Thanks!
lingyudada + 1 感觉还不错,但是都是用堡垒机登陆了 不能使用
風信子 + 1 + 1 用心讨论,共获提升!
sxxstc + 1 + 1 谢谢@Thanks!
wb1994ches + 1 热心回复!
懂事的小松鼠 + 1 谢谢@Thanks!
精妹 + 1 我很赞同!
ironwing + 1 + 1 我很赞同!
NorthLedger + 1 + 1 谢谢@Thanks!
Dawnth + 1 + 1 谢谢@Thanks!
kurong_33 + 1 + 1 谢谢@Thanks!
hxdfree + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
joy8514 + 1 + 1 我很赞同!
sdsdxu + 1 谢谢@Thanks!
dfbird + 1 + 1 谢谢@Thanks!
baqycl + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
hillmagic + 1 谢谢@Thanks!
onlyrfc + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
刘甲乙 + 2 + 1 谢谢@Thanks!
xb0wxh + 1 + 1 谢谢@Thanks!
csq0216 + 1 我很赞同!
淡水河 + 1 谢谢@Thanks!
DaiTian + 1 + 1 谢谢 @Thanks!
crizquan + 1 + 1 热心回复!
风夜 + 1 我很赞同!
xiuyuan_xm + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
tanhaibigg + 1 + 1 谢谢@Thanks!
studyggm + 1 + 1 谢谢@Thanks!
nndyky + 1 + 1 鼓励转贴优秀软件安全工具和文档!
Alex混时 + 1 谢谢@Thanks!
sanshi007 + 1 + 1 谢谢@Thanks!
yanglinman + 1 谢谢@Thanks!
allenzhu + 1 + 1 鼓励转贴优秀软件安全工具和文档!
夜游星河 + 1 + 1 我很赞同!
爱的太迟 + 1 + 1 用心讨论,共获提升!
dragon8848 + 1 + 1 我很赞同!
chaohao1988 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
人时地事 + 1 我很赞同!
blindcat + 1 + 1 谢谢@Thanks!
ospwd + 1 + 1 谢谢@Thanks!
打枪的牛人 + 1 + 1 用心讨论,共获提升!
ts韩凌 + 2 + 1 我很赞同!
donalxm + 1 谢谢@Thanks!
lm398792990 + 1 + 1 谢谢@Thanks!
yaan + 1 + 1 热心回复!
jfaboy + 1 + 1 鼓励转贴优秀软件安全工具和文档!
刻周求剑 + 1 我很赞同!
zhengsuijian + 1 + 1 谢谢@Thanks!
MaoKing + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
Raon03 + 1 + 1 谢谢@Thanks!

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

donalxm 发表于 2023-4-27 16:01
试了一下V6版,报错,如下:
E:\软件\网络设备自动巡检\各友商网络设备采集v6>python\python Networkbackup.py
Traceback (most recent call last):
  File "E:\软件\网络设备自动巡检\各友商网络设备采集v6\Networkbackup.py", line 174, in <module>
    pool.map(ssh_session,SW_DL)
  File "E:\软件\网络设备自动巡检\各友商网络设备采集v6\python\Lib\multiprocessing\pool.py", line 367, in map
    return self._map_async(func, iterable, mapstar, chunksize).get()
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "E:\软件\网络设备自动巡检\各友商网络设备采集v6\python\Lib\multiprocessing\pool.py", line 774, in get
    raise self._value
  File "E:\软件\网络设备自动巡检\各友商网络设备采集v6\python\Lib\multiprocessing\pool.py", line 125, in worker
    result = (True, func(*args, **kwds))
                    ^^^^^^^^^^^^^^^^^^^
  File "E:\软件\网络设备自动巡检\各友商网络设备采集v6\python\Lib\multiprocessing\pool.py", line 48, in mapstar
    return list(map(*args))
           ^^^^^^^^^^^^^^^^
  File "E:\软件\网络设备自动巡检\各友商网络设备采集v6\Networkbackup.py", line 40, in ssh_session
    net_connect = ConnectHandler(
                  ^^^^^^^^^^^^^^^
  File "E:\软件\网络设备自动巡检\各友商网络设备采集v6\python\Lib\site-packages\netmiko\ssh_dispatcher.py", line 360, in ConnectHandler
    raise ValueError(
ValueError: Unsupported 'device_type' currently supported platforms are:
a10
accedian
adtran_os
alcatel_aos
alcatel_sros
allied_telesis_awplus
apresia_aeos
arista_eos
aruba_os
aruba_osswitch
aruba_procurve
audiocode_66
audiocode_72
audiocode_shell
avaya_ers
avaya_vsp
broadcom_icos
brocade_fastiron
brocade_fos
brocade_netiron
brocade_nos
brocade_vdx
brocade_vyos
calix_b6
cdot_cros
centec_os
checkpoint_gaia
ciena_saos
cisco_asa
cisco_ftd
cisco_ios
cisco_nxos
cisco_s300
cisco_tp
cisco_viptela
cisco_wlc
cisco_xe
cisco_xr
cloudgenix_ion
coriant
dell_dnos9
dell_force10
dell_isilon
dell_os10
dell_os6
dell_os9
dell_powerconnect
dell_sonic
dlink_ds
eltex
eltex_esr
endace
enterasys
ericsson_ipos
extreme
extreme_ers
extreme_exos
extreme_netiron
extreme_nos
extreme_slx
extreme_tierra
extreme_vdx
extreme_vsp
extreme_wing
f5_linux
f5_ltm
f5_tmsh
flexvnf
fortinet
generic
generic_termserver
hp_comware
hp_procurve
huawei
huawei_olt
huawei_smartax
huawei_vrpv8
ipinfusion_ocnos
juniper
juniper_junos
juniper_screenos
keymile
keymile_nos
linux
mellanox
mellanox_mlnxos
mikrotik_routeros
mikrotik_switchos
mrv_lx
mrv_optiswitch
netapp_cdot
netgear_prosafe
netscaler
nokia_srl
nokia_sros
oneaccess_oneos
ovs_linux
paloalto_panos
pluribus
quanta_mesh
rad_etx
raisecom_roap
ruckus_fastiron
ruijie_os
sixwind_os
sophos_sfos
supermicro_smis
tplink_jetstream
ubiquiti_edge
ubiquiti_edgerouter
ubiquiti_edgeswitch
ubiquiti_unifiswitch
vyatta_vyos
vyos
watchguard_fireware
yamaha
zte_zxros
zyxel_os

E:\软件\网络设备自动巡检\各友商网络设备采集v6>pause
请按任意键继续. . .
donalxm 发表于 2023-4-28 08:14
tonekey2016 发表于 2023-4-27 22:22
再试一下华三的 看看还报错么

还是报错

E:\软件\网络设备自动巡检\各友商网络设备采集v7>python\python Networkbackup.py
Traceback (most recent call last):
  File "E:\软件\网络设备自动巡检\各友商网络设备采集v7\Networkbackup.py", line 176, in <module>
    pool.map(ssh_session,SW_DL)
  File "E:\软件\网络设备自动巡检\各友商网络设备采集v7\python\Lib\multiprocessing\pool.py", line 367, in map
    return self._map_async(func, iterable, mapstar, chunksize).get()
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "E:\软件\网络设备自动巡检\各友商网络设备采集v7\python\Lib\multiprocessing\pool.py", line 774, in get
    raise self._value
  File "E:\软件\网络设备自动巡检\各友商网络设备采集v7\python\Lib\multiprocessing\pool.py", line 125, in worker
    result = (True, func(*args, **kwds))
                    ^^^^^^^^^^^^^^^^^^^
  File "E:\软件\网络设备自动巡检\各友商网络设备采集v7\python\Lib\multiprocessing\pool.py", line 48, in mapstar
    return list(map(*args))
           ^^^^^^^^^^^^^^^^
  File "E:\软件\网络设备自动巡检\各友商网络设备采集v7\Networkbackup.py", line 49, in ssh_session
    output = net_connect.send_command(dis_config)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "E:\软件\网络设备自动巡检\各友商网络设备采集v7\python\Lib\site-packages\netmiko\utilities.py", line 592, in wrapper_decorator
    return func(self, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "E:\软件\网络设备自动巡检\各友商网络设备采集v7\python\Lib\site-packages\netmiko\base_connection.py", line 1721, in send_command
    raise ReadTimeout(msg)
netmiko.exceptions.ReadTimeout:
Pattern not detected: '<SW\\-F2\\-NEI>' in output.

Things you might try to fix this:
1. Explicitly set your pattern using the expect_string argument.
2. Increase the read_timeout to a larger value.

You can also look at the Netmiko session_log or debug log for more information.



E:\软件\网络设备自动巡检\各友商网络设备采集v7>pause
请按任意键继续. . .


另:h3c的设备也需要enable密码?

17355812573 发表于 2023-4-26 13:38
探索知识 发表于 2023-4-26 13:51
网工必备华为、华三、思科交换机配置自动采集工具(源码)
感谢分享
RoyPenn 发表于 2023-4-26 13:58
高手啊~自动化运维
 楼主| tonekey2016 发表于 2023-4-26 14:00
RoyPenn 发表于 2023-4-26 13:58
高手啊~自动化运维

百来台每月巡检,不搞点脑子真的会累死
baishuihao 发表于 2023-4-26 14:00
不懂;路过顶一下
尐右 发表于 2023-4-26 14:14
老网工了,支持一下。
失落的永恒 发表于 2023-4-26 14:14
这个是个好东西,以保存,溜得飞起
liangfj 发表于 2023-4-26 14:27
希望有更好的UI与简化工具
cx0071 发表于 2023-4-26 14:31
感谢分享,希望能加上telnet
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-12-4 17:27

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表