玖叶教程网

前端编程开发入门

网络设备配置文件备份就是这么简单

网络设备在生成环境中担任着重要的角色,为了在出现故障时,以最快的速度恢复,所有,在日常维护中,我们会选择定期对网络设备配置文件进行备份。当出现一些硬件故障时,需要更换新的网络设备,可以快速的恢复之前的配置。在生成环境中,你们是如何进行网络设备配置文件的备份呢?

今天分享一个备份脚本,希望对大家有所帮助。

拓扑

此案例把网络设备的配置文件备份到FTP服务器上。

配置步骤

1、确保网络设备与FTP服务器能通信,并且能访问FTP服务器。

2、编写备份配置文件脚本。脚本代码如下。

#coding=utf-8
# 通过telnet 远程登录设备
import telnetlib
import os
import datetime
import time
import sys
reload(sys)
sys.setdefaultencoding("utf-8")
time1=datetime.datetime.now()
time2=time1.strftime('%Y%m%d')
def path_check(path):
 if os.path.exists(path):
 pass
 else:
 os.mkdir(path,0757)
def login_ftp(telnetsession,password_prompt):
 telnetsession.write("ftp 192.168.35.202\n")
 telnetsession.read_until("(none)):")
 telnetsession.write("anonymous\n")
 telnetsession.read_until(password_prompt)
 telnetsession.write("\n")
 telnetsession.read_until("[ftp]")
 telnetsession.write("cd pub \n")
 telnetsession.read_until("[ftp]")
 path="/var/ftp/pub/"+time2
 if os.os.path.exists(path):
 pass
 else:
 telnetsession.write("mkdir "+ time2 +"\n")
 telnetsession.read_until("[ftp]")
 telnetsession.write("cd /pub/"+ time2 +"\n")
 telnetsession.read_until("[ftp]") 
def do_telent(Host,username,password):
 _UsermodTag=">"
 telnetsession = telnetlib.Telnet(Host,port=23,timeout=5)
 telnetsession.set_debuglevel(2)
 time1=datetime.datetime.now()
 time2=time1.strftime('%Y-%m-%d')
 #输入用户名
 login_prompt="Username"
 response = telnetsession.read_until(login_prompt)
 if login_prompt in response:
 print ('[*] Username: %s'%username)
 telnetsession.write(username + "\n")
 #输入密码 
 password_prompt="Password"
 response = telnetsession.read_until(password_prompt)
 if password_prompt in response:
 print ('[*] Password: %s'%password)
 telnetsession.write(password + "\n") 
 password_prompt="password" 
 telnetsession.read_until(_UsermodTag)
 login_ftp(telnetsession,password_prompt)
 telnetsession.write("put vrpcfg.zip %s" %Host+'_'+time2+"_vrpcfg.zip" + "\n")
 telnetsession.read_until("[ftp]")
 telnetsession.close()
if __name__ == '__main__':
 path="/var/ftp/pub/"+time2
 path_check(path)
 Host=["192.168.35.10"]
 username="admin"
 password="admin123"
 for host in Host:
 do_telent(host,username,password)

3、把脚本加入crontab定期执行。

4、验证

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言