肥宅钓鱼网
当前位置: 首页 钓鱼百科

python语言中导入模块的方法(网工Python之路之paramiko模块实验)

时间:2023-08-12 作者: 小编 阅读量: 2 栏目名: 钓鱼百科

LSWx,IP为192.168.242.1x/24,连接到透明交换机SW1。实验结果检测查看各设备EIGRP情况。以LSW1为例就不逐一检测了。可以看到eigrp已经配置,邻居关系也可以看到。准备条件:1、实验拓扑中,LSW5的管理地址从192.168.242.15改成192.168.242.55。(附LSW1的配置,如LSW2则仅为将192.168.242.11改为192.168.242.12,这里从简。)特别注意:LSW5的IP是192.168.242.55。

感谢知乎两位大佬:@弈心和@朱嘉盛

@弈心大佬的实验主要是基于 linux 系统、思科设备或 GNS3 模拟器完成。

@朱嘉盛大佬考虑到当前在国内华为较为主流,也用 Windows 系统,尝试用华为的真机或者 eNSP 模拟器,把书中提及的实验做一做,方便大家学习记录,方便交流。

小编这里采用eve-ng liunx来模拟实践思科部分的实验效果,以及采用ensp windows复现一遍华为的实验。

首先咱们看下思科的实验:平台工具:
  • 实验平台:Linux Centos7
  • 使用工具:EVE-ng、python 3.6.8
实验拓扑:

注意:

书中使用了 192.168.2.0/24 ,我这里才有eve桥接的虚拟网段192.168.242.0/24来演示本次实验。

【SSH 服务端】LSW x,IP为 192.168.242.1x/24,连接到透明交换机SW1。

实验目的:

1、在生产环境中,交换机的管理 IP 基本不可能像实验环境中这样 11 到 15,有些交换机的管理 IP 甚至在不同的网段,这种情况下,我们就不能简单的用 for loop 来循环 IP 地址的最后一段来登录交换机。这里我们要额外开一个文本文件,把我们需要登录的交换机 IP 全部写进去,然后用 for loop 配合 open() 函数来批量登录所有交换机。(抄书的哈)

2、用上面的方法登录所有交换机,开启 EIGRP,然后查看状态。

准备条件:

1、实验拓扑中,LSW5 的管理地址从 192.168.242.15 改成 192.168.242.55(见实验拓扑图)。

2、创建一个名为 ip_list.txt 的文件,把 LSW1 到 LSW5 交换机的管理 IP 地址放进去。

实验环境配置

按照拓扑,每台交换机 vlan 1 都配置 vlanif 的 IP 作为管理。(附 LSW1 的配置,如 LSW2 则仅为将 192.168.242.11 改为 192.168.242.12,这里从简。)特别注意:LSW5 的 IP 是 192.168.242.55。)

初始化1.配置hostname 和domain-namehostnameLSW1ipdomain-nameshiranit.com2.产生密钥,产生1024位的密钥crypto key generate rsa general-keysmodulus 10243.配置sssh的信息会话超时时间ip sshtime-out 120最大认证次数ip ssh authentication-retries 3启用ssh和telnet认证line vty 0 4transport input ssh telnetlogin local4.本地认证用户 enable passwod 123 username python privilege 15 password 123 PS: privilege 15这么设置是为了免去登陆时输入enable密码 5.配置管理地址 interface Vlan 1ip address 192.168.242.11 255.255.255.0

实验前检查

1、按之前实验套路,对 LSW1 到 LSW5 逐一检查 PC 到 LSW1 至 LSW5 的网络连通性,如不通需要排网络,本文此处描述从简。

2、检查 LSW1 至 LSW5 当前是否开启EIGRP,命令如下, inc 后为关键字匹配,其实也可以匹配 -------,这个大家随意发挥,能找出来"EIGRP"就好。

更多精彩内容关注“释然IT杂谈”

Python 代码

代码讲解,大神在书里和专栏中已逐条做了解释

import paramikoimport timeimport getpassusername = input("Username: ")password = getpass.getpass("Password: ")# 此时 ip_list.txt 需要与 lab3.py 在相同的文件夹中f = open('ip_list.txt')for line in f.readlines():ip = line.strip()ssh_client = paramiko.SSHClient()ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy())ssh_client.connect(hostname=ip,username=username,password=password,look_for_keys=False)command = ssh_client.invoke_shell()print('=-=-=-=-=-=-=-=-=-=-=-=-=-=')print('已经成功登陆交换机 LSW-'ip)# 关闭分屏功能command.send('terminal length 0 \n')#向交换机发送指令# 进入特权模式command.send('en\n')# 进入全局模式command.send('conf t\n')# 将开启eigrp并宣告网段command.send('router eigrp 1\n')command.send('net 192.168.242.0 \n')time.sleep(2)command.send('end\n')command.send('wr\n')time.sleep(2)output = command.recv(65535).decode('ASCII')print(output)ssh_client.close()

执行脚本文件:

好了,代码执行完成回显,如上图显示。

实验结果检测

查看各设备EIGRP情况。以LSW1为例就不逐一检测了。

可以看到eigrp已经配置,邻居关系也可以看到。实验小结

本实验主要实现脚本调去外部文件,其实 交换机 IP 可以用文件 ip_list.txt 装起来,那么咱们的设备指令,是不是也可以用 commnd_list.txt 装起来呢?

再来看看@朱嘉盛大佬带来的华为实验:平台工具:
  • 实验平台:WIN10
  • 使用工具:eNSP v1.3.00.100、python 3.7.3
实验拓扑:

注意:

书中使用了 192.168.2.0/24 ,我这里才有eve桥接的虚拟网段192.168.242.0/24来演示本次实验。

【SSH 服务端】LSW x,IP为 192.168.242.1x/24,连接到透明交换机SW1。

实验目的:

1、在生产环境中,交换机的管理 IP 基本不可能像实验环境中这样 11 到 15,有些交换机的管理 IP 甚至在不同的网段,这种情况下,我们就不能简单的用 for loop 来循环 IP 地址的最后一段来登录交换机。这里我们要额外开一个文本文件,把我们需要登录的交换机 IP 全部写进去,然后用 for loop 配合 open() 函数来批量登录所有交换机。(抄书的哈)

2、用上面的方法登录所有交换机,把华为交换机默认的 MSTP 修改成 STP。

准备条件:

1、实验拓扑中,LSW5 的管理地址从 192.168.242.15 改成 192.168.242.55(见实验拓扑图)。

2、创建一个名为 ip_list.txt 的文件,把 LSW1 到 LSW5 交换机的管理 IP 地址放进去。

3、创建一个名为commnd_list.txt的文件,放置需要配置的命令。

实验环境配置

按照拓扑,每台交换机 vlan 1 都配置 vlanif 的 IP 作为管理。(附 LSW1 的配置,如 LSW2 则仅为将 192.168.242.11 改为 192.168.242.12,这里从简。)特别注意:LSW5 的 IP 是 192.168.242.55。)

sysname LSW1aaa# 密码明文 123 local-user python password cipher #*C>*$C`S!INZPO3JBXBHA!! local-user python privilege level 3 local-user python service-type sshinterface Vlanif1 ip address 192.168.11.11 255.255.255.0stelnet server enable# 下面这条很关键,我一开始没配置这条,一直 ssh 反馈有错误。# 模拟器的产品手册说这条是默认值,但测试后需要手动配置。ssh authentication-type default passworduser-interface vty 0 4 authentication-mode aaa protocol inbound ssh

实验前检查

1、按之前实验套路,对 LSW1 到 LSW5 逐一检查 PC 到 LSW1 至 LSW5 的网络连通性,如不通需要排网络,本文此处描述从简。

2、检查 LSW1 至 LSW5 当前的 STP 模式,命令如下, inc 后为关键字匹配,其实也可以匹配 -------,这个大家随意发挥,能找出来"MSTP"就好。

更多精彩内容关注“释然IT杂谈”

Python 代码

代码讲解,大神在书里和专栏中已逐条做了解释

import paramikoimport timeimport getpassusername = input("Username: ")password = getpass.getpass("Password: ")# 此时 ip_list.txt 需要与 lab3.py 在相同的文件夹中f = open('ip_list.txt')for line in f.readlines():ip = line.strip()ssh_client = paramiko.SSHClient()ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy())ssh_client.connect(hostname=ip,username=username,password=password,look_for_keys=False)command = ssh_client.invoke_shell()print('=-=-=-=-=-=-=-=-=-=-=-=-=-=')print('已经成功登陆交换机 LSW-'ip)l = open('commnd_list.txt','r')l.seek(0)for line in l.readlines():comm = line.strip()command.send(comm'\n')time.sleep(2)output = command.recv(65535).decode('ASCII')print(output)ssh_client.close()

执行脚本文件:

好了,代码执行完成回显,如上图显示。

实验结果检测

检查 LSW1 至 LSW5 当前的 STP 模式,命令如下, inc 后为关键字匹配,其实也可以匹配 -------,这个大家随意发挥,能找出来"STP"就好。以LSW1为例查看。

实验小结

本实验主要实现脚本调去外部文件,来实现所需功能的配置。

    推荐阅读
  • 养茶宠有什么忌讳(关于养茶宠的注意事项)

    养新茶宠要会选茶,在挑选完合适的茶宠后,把茶宠带回家了,这时候就要开始养茶宠,只有经过茶水的浇灌,它才会变得喜人。茶宠首次沐汤要用温水,茶宠的讲究—新茶宠到家后首次沐汤要尽量使用温水。新茶宠到家要经常养护,每天浇灌茶宠是喝茶人的乐事,但是对于新茶宠来说不要猛浇,而是应该用毛笔在茶宠外面慢慢涂抹,或者用干净的茶水细浇。相冲的生肖一般相隔六位,比如说属鼠和属猪,属牛和属羊等。

  • 惟妙惟肖的惟的意思是什么(惟的意思简介)

    惟妙惟肖的惟释义:助词解释:惟妙惟肖是一个汉语成语,形容描写或模仿得非常逼真惟,助词妙:好也作“维妙维肖”和“唯妙唯肖”,我来为大家科普一下关于惟妙惟肖的惟的意思是什么?

  • 微商秘密终于公开了(微商帝国崩塌代理商成)

    被称为“微商教父”的龚文祥,宣布正式退出微商行业。他表示,在受到工商税务公安法院等专案组的联合查处后,自己“公司破产,卖房卖车,身无分文”。据招聘人员透露,TST庭秘密的代理不需要缴纳入会费用,开卡的前提是要提供个人姓名、手机以及银行账号。涉嫌传销的阴影并没有让微商帝国销声匿迹。2月15日,张庭夫妇又成立了新公司。不过,对于绝大多数微商品牌而言,黯然退场是它们最终的宿命。

  • 防盗门锁体结构(防盗门锁体种类区分)

    这是目前市面上常见的4种防盗门锁体,从左到右依次是大霸王锁体,盼盼小帅锁体,大圆柱锁体,扁片锁体,四种锁体以最后两种最为常见几乎涵盖了百分之90的家庭,也是目前指纹锁适配性最好的两种。

  • 官能团的定义(什么是官能团)

    官能团的定义官能团指有机化合物分子中能够决定有机化合物主要化学性质的原子或原子团。常见官能团包括羟基、羧基、醚键、醛基、羰基等。有机化学反应主要发生在官能团上,官能团对有机物的性质起决定作用。对于同类有机物,由于官能团的位置不同而引起的同分异构是官能团的位置异构。对于同一种原子组成,却形成了不同的官能团,从而形成了不同的有机物类别,这就是官能团的种类异构。

  • 传祺gs5安全座椅是什么接口(传祺gs4的安全座椅是什么接口)

    传祺gs5安全座椅是什么接口传祺GS5安全座椅适用三种种类固定不动安裝,分别是三点式保险带固定不动,ISOFIX插口固定不动,及其LATCH系统固定不动。安裝ISOFIX系统或LATCH系统ISOFIX系统和LATCH系统儿童安全座椅其安装方法贴近,LATCH系统比ISOFIX系统多了一个上固定点,二种系统的下固定点通用性。传祺GS5的后排座座椅武器装备的是LATCH系统,因而既能安裝LATCH系统儿童安全座椅,也可以安裝ISOFIX系统儿童安全座椅。

  • 23号丽江天气预报(丽江2022年09月19日天气预报)

    23号丽江天气预报丽江09月19日(周一)天气预报,天气现象多云转阵雨,风向风力:南风转西风<3级。最高气温24℃摄氏度,最低气温14摄氏度。紫外线指数:中等,涂擦SPF大于15、PA防晒护肤品。

  • 正确喝水的方法你都知道吗(快看看正确喝水的方式你真的掌握了吗)

    水是我们的生命之源,是人体中必需的成分。所以每天最佳饮水量在学术上几乎是一个无法研究的问题。但是如果心肾功能不全的患者,多饮水可能增加心肾的负担,因此他们应该控制进水量。(四)运动饮料含有氯化钠,适用于运动流汗后或拉肚子后的体液补充,不适合在平时当开水大量饮用,以免增加肾脏负担。(六)市面上饮用的电解水为碱性水,适合酸性体质或平常喜欢吃肉而少吃蔬菜水果的人。

  • 成都市武侯区最新通知(成都市武侯区成华区)

    成都市武侯区最新通知9月20日-21日,成都市武侯区、成华区、青羊区新冠肺炎疫情防控指挥部发布最新通告。成都市青羊区其他区域风险等级不变。

  • 关于食品经营许可证

    食品经营许可是后置许可,实行的是先照后证,也就是说申请食品经营许可证,必须先行取得工商营业执照或其他主体资格合法证件,如事业单位法人登记证、社会团队登记证等等。经营者名称是对应填写营业执照上的名称一栏,两者需保持一致。持有个体工商户营业执照的商户用投资人身份证号码替代。第二种情况根据许可审查实施细则第十四条,贮存场所是视同为经营场所的,因此也可以许可。