python使用paramiko模块通过ssh2协议对交换机进行配置的方法


Posted in Python onJuly 25, 2019

该代码用的是paramiko模块,python版本是python2.7

下面上源码

# -*- coding: utf-8 -*-

import paramiko
import time
import os

port = '22'
username = '****'
password = '****'
ip = '****'  # 测试用的交换机ip

msg1flag = 0
mycmd1flag = 0

# 核心方法,该方法连接远程主机并打开一个终端,并将该终端返回
def msg1(ip,mport,musername,mpassword,mflag):
  try:
    # 设置ssh连接的远程主机地址和端口
    t = paramiko.Transport(ip, mport)
    # 设置登录名和密码
    t.connect(username=musername, password=mpassword)
    # 连接成功后打开一个channel
    chan = t.open_session()
    # 设置会话超时时间
    chan.settimeout(timeout=180)
    # 打开远程的terminal
    chan.get_pty()
    # 激活terminal
    chan.invoke_shell()
    return chan
  except Exception,e:
    mflag += 1
    time.sleep(5)
    if mflag < 3:
      msg1(ip,mport,musername,mpassword,mflag)

# 黄栋淋交换机开启审计专用
def mycmd(chan,my1flag):
  try:
    chan.send('system' + '\n') # 输入命令
    chan.send('****' + '\n')  # 输入命令
    chan.send('****' + '\n')
    chan.send('****' + '\n')
    time.sleep(50)
    i = 1
    while i < 3:
      chan.send('\n')
      i += 1
    time.sleep(2)
    result = chan.recv(65535)   # 得到命令返回的结果
    print result
    strlen = len(result)      # 得到结果字符串的长度
    print strlen
    return result

  except Exception,e:
    # print e
    my1flag += 1
    time.sleep(5)
    if my1flag < 3:
      mycmd(chan,my1flag)



nowtime = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())) # 时间

# 测试项
chan_ip_test = msg1(ip,port,username,password,msg1flag)
resu_ip_test = mycmd(chan_ip_test,mycmd1flag)

以上这篇python使用paramiko模块通过ssh2协议对交换机进行配置的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python多线程编程方式分析示例详解
Dec 06 Python
使用python绘制人人网好友关系图示例
Apr 01 Python
Python随机生成彩票号码的方法
Mar 05 Python
Python远程桌面协议RDPY安装使用介绍
Apr 15 Python
Python EOL while scanning string literal问题解决方法
Sep 18 Python
python使用分治法实现求解最大值的方法
May 12 Python
Windows下安装python2和python3多版本教程
Mar 30 Python
利用python将pdf输出为txt的实例讲解
Apr 23 Python
我用Python抓取了7000 多本电子书案例详解
Mar 25 Python
django-xadmin根据当前登录用户动态设置表单字段默认值方式
Mar 13 Python
详解Python之Scrapy爬虫教程NBA球员数据存放到Mysql数据库
Jan 24 Python
PyCharm 配置SSH和SFTP连接远程服务器
May 11 Python
python2 中 unicode 和 str 之间的转换及与python3 str 的区别
Jul 25 #Python
Python 3.8 新功能全解
Jul 25 #Python
python3.7 的新特性详解
Jul 25 #Python
python issubclass 和 isinstance函数
Jul 25 #Python
django的分页器Paginator 从django中导入类
Jul 25 #Python
python threading和multiprocessing模块基本用法实例分析
Jul 25 #Python
Python交互式图形编程的实现
Jul 25 #Python
You might like
PHP 在线翻译函数代码
2009/05/07 PHP
php strcmp使用说明
2010/04/22 PHP
使用bcompiler对PHP文件进行加密的代码
2010/08/29 PHP
thinkphp3.2中Lite文件替换框架入口文件或应用入口文件的方法
2015/05/21 PHP
PHP数组游标实现对数组的各种操作详解
2016/01/26 PHP
PHP MySql增删改查的简单实例
2016/06/21 PHP
Yii2框架实现登陆添加验证码功能示例
2018/07/12 PHP
jQuery 第二课 操作包装集元素代码
2010/03/14 Javascript
ASP 过滤数组重复数据函数(加强版)
2010/05/31 Javascript
jquery使用animate方法实现控制元素移动
2015/03/27 Javascript
jQuery Easyui学习之datagrid 动态添加、移除editor
2016/01/27 Javascript
Java遍历集合方法分析(实现原理、算法性能、适用场合)
2016/04/25 Javascript
JavaScript判断浏览器对CSS3属性是否支持的多种方法
2016/11/13 Javascript
VUE JS 使用组件实现双向绑定的示例代码
2017/01/10 Javascript
nodejs入门教程六:express模块用法示例
2017/04/24 NodeJs
深入理解Nodejs Global 模块
2017/06/03 NodeJs
浅谈在node.js进入文件目录的问题
2018/05/13 Javascript
vue 父组件给子组件传值子组件给父组件传值的实例代码
2019/04/15 Javascript
[00:05]ChinaJoy现场 DOTA2玩家高呼“CN DOTA BEST DOTA”
2019/08/04 DOTA
python中zip和unzip数据的方法
2015/05/27 Python
Python数据分析之双色球统计单个红和蓝球哪个比例高的方法
2018/02/03 Python
Python实现图片拼接的代码
2018/07/02 Python
使用Python画出小人发射爱心的代码
2019/11/23 Python
django 数据库返回queryset实现封装为字典
2020/05/19 Python
HTML5 Canvas像素处理使用接口介绍
2012/12/02 HTML / CSS
日本运动品牌美津浓官方购物网站:MIZUNO SHOP
2016/08/21 全球购物
Carter’s OshKosh加拿大:购买婴幼儿服装和童装
2018/11/27 全球购物
如何做好总经理助理
2013/11/12 职场文书
计算机应用专业推荐信
2013/11/13 职场文书
保护环境建议书400字
2014/05/13 职场文书
职务任命书范本
2014/06/05 职场文书
道路运输企业安全生产责任书
2014/07/28 职场文书
机关党总支领导班子整改方案
2014/09/20 职场文书
员工保密协议范本,您一定得收藏!很有用!
2019/08/08 职场文书
Python 使用dict实现switch的操作
2021/04/07 Python
Pycharm 如何设置HTML文件自动补全代码或标签
2021/05/21 Python