用Python实现网络设备的配置备份

实验目的:在centos8主机上开启FTP server服务,创建python脚本,将SW1~SW5的running  configuration 备份保存到TFTP服务器上;

实验准备:

1.在VMware虚拟机安装CentOS 8 的主机,输入下列命令下载安装vsftpd(FTP服务),安装前需要确认主机能否连通外网

yum install vsftpd -y

2.当前启用ftp服务:

systemctl start vsftpd

3.开机自启动ftp服务:

systemctl enable vsftpd

4.确认vsftpd已被启动运行:

systemctl status vsftpd

5.关闭防火墙

systemctl stop firewalld

systemctl status firewalld                #查看防火墙被关闭

6.VM创建新用户     #作为ftp用户

useradd -create-home python

passwd python

7.创建ip.txt,放入需要备份的交换机的IP地址

实验代码如下:

import paramiko

import time

import getpass

username = input('Username:')

password = getpass.getpass('password:')

f = open("ip.txt")

for line in f.readlines():

ip_address = line.strip()

ssh_client = paramiko.SSHClient()

ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy())

ssh_client.connect(hostname=ip_address,username=username,password=password,allow_agent=False,look_for_keys=False)

print ("成功连接到", ip_address)

command = ssh_client.invoke_shell()

command.send("configure terminal\n")

command.send("ip ftp username python\n")

command.send("ip ftp password 123\n")

command.send("file prompt quiet\n")

command.send("end\n")

command.send("copy running-config ftp://192.168.0.129\n")

time.sleep(5)

output = command.recv(65535)

print (output.decode('ascii'))

f.close()

ssh_client.close

验证:

运行脚本完毕后,回到/home/python,ls 查看running config是否备份到文件夹下

用cat 打开其中任意一个config文件,验证其内容。

《思科 - GNS3 - 备份配置》相关推荐

  1. ComeFuture英伽学院——2020年 全国大学生英语竞赛【C类初赛真题解析】(持续更新)

    视频:ComeFuture英伽学院--2019年 全国大学生英语竞赛[C类初赛真题解析]大小作文--详细解析 课件:[课件]2019年大学生英语竞赛C类初赛.pdf 视频:2020年全国大学生英语竞赛 ...

  2. ComeFuture英伽学院——2019年 全国大学生英语竞赛【C类初赛真题解析】大小作文——详细解析

    视频:ComeFuture英伽学院--2019年 全国大学生英语竞赛[C类初赛真题解析]大小作文--详细解析 课件:[课件]2019年大学生英语竞赛C类初赛.pdf 视频:2020年全国大学生英语竞赛 ...

  3. 信息学奥赛真题解析(玩具谜题)

    玩具谜题(2016年信息学奥赛提高组真题) 题目描述 小南有一套可爱的玩具小人, 它们各有不同的职业.有一天, 这些玩具小人把小南的眼镜藏了起来.小南发现玩具小人们围成了一个圈,它们有的面朝圈内,有的 ...

  4. 信息学奥赛之初赛 第1轮 讲解(01-08课)

    信息学奥赛之初赛讲解 01 计算机概述 系统基本结构 信息学奥赛之初赛讲解 01 计算机概述 系统基本结构_哔哩哔哩_bilibili 信息学奥赛之初赛讲解 02 软件系统 计算机语言 进制转换 信息 ...

  5. 信息学奥赛一本通习题答案(五)

    最近在给小学生做C++的入门培训,用的教程是信息学奥赛一本通,刷题网址 http://ybt.ssoier.cn:8088/index.php 现将部分习题的答案放在博客上,希望能给其他有需要的人带来 ...

  6. 信息学奥赛一本通习题答案(三)

    最近在给小学生做C++的入门培训,用的教程是信息学奥赛一本通,刷题网址 http://ybt.ssoier.cn:8088/index.php 现将部分习题的答案放在博客上,希望能给其他有需要的人带来 ...

  7. 信息学奥赛一本通 提高篇 第六部分 数学基础 相关的真题

    第1章   快速幂 1875:[13NOIP提高组]转圈游戏 信息学奥赛一本通(C++版)在线评测系统 第2 章  素数 第 3 章  约数 第 4 章  同余问题 第 5 章  矩阵乘法 第 6 章 ...

  8. 信息学奥赛一本通题目代码(非题库)

    为了完善自己学c++,很多人都去读相关文献,就比如<信息学奥赛一本通>,可又对题目无从下手,从今天开始,我将把书上的题目一 一的解析下来,可以做参考,如果有错,可以告诉我,将在下次解析里重 ...

  9. 信息学奥赛一本通(C++版) 刷题 记录

    总目录详见:https://blog.csdn.net/mrcrack/article/details/86501716 信息学奥赛一本通(C++版) 刷题 记录 http://ybt.ssoier. ...

  10. 最近公共祖先三种算法详解 + 模板题 建议新手收藏 例题: 信息学奥赛一本通 祖孙询问 距离

    首先什么是最近公共祖先?? 如图:红色节点的祖先为红色的1, 2, 3. 绿色节点的祖先为绿色的1, 2, 3, 4. 他们的最近公共祖先即他们最先相交的地方,如在上图中黄色的点就是他们的最近公共祖先 ...

最新文章

  1. error while loading shared libraries: libstdc++.so.5: wrong ELF class: ELFCLASS64
  2. mysql的repeat()函数
  3. Leetcode69场双周赛-第二题5961.链表最大孪生和
  4. 分布式服务常见问题—分布式事务
  5. LwIP移植到FreeRTOS(STM32F107+DP83848)
  6. 计算机主机的奥秘,揭秘网吧电脑为何流畅的奥秘
  7. 通过mysqlnow()函数校正本地(windows)时间与服务器(linux)时间
  8. django-salmonella的使用
  9. 高盛:Github开源、Marquee、SecDB
  10. sipp命令 各参数含义
  11. 镁客网每周硬科技领域投融资汇总(10.21-10.27),AI芯片创企Syntiant获英特尔等头部企业投资...
  12. html设置请求头host,Http请求头Host字段作用
  13. Unity3d+C#斗地主学习探究1
  14. python语言求球的体积,改进蒙特卡罗程序求高维球体体积。(Python)
  15. 验证哥德巴赫猜想:任何一个大于等于6的偶数均可表示为两个素数的和。如6=3+3,8=3+5,,18=5+13。试编写程序,要求将输入的一个偶数表示成两个素数之和。 输入输出样例如下:
  16. 通达信 数据格式 java_通达信日线 数据格式
  17. 在线版区间众数 hzw的代码。。
  18. WLAN未启用DHCP
  19. 分支限界法求解旅行商问题(TSP)
  20. 9----编程抓小偷(逻辑推理)

热门文章

  1. Swift 之 JSONEncoder 和 JSONDecoder
  2. 使用quagga/zebra的RIP实验
  3. python 魔法方法常用的有_【Python】面向对象常用魔法方法集合
  4. 区块链开发者观点:来自慢雾科技的 Keywolf
  5. 渣渣渣变渣渣系列(6)
  6. LSH系列3:p-stable LSHE2LSH——原理介绍
  7. hdu 1494 跑跑卡丁车~
  8. 所有华为手机都可以支持鸿蒙系统,华为鸿蒙系统支持机型公布,几乎涵盖所有华为系列手机[多图]...
  9. 0715-铁矿石跌10%
  10. 世界上最短的DVD解码程序(附源码)