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输出一个杨辉三角的例子
Jun 13 Python
python中随机函数random用法实例
Apr 30 Python
自己使用总结Python程序代码片段
Jun 02 Python
Python中的字典与成员运算符初步探究
Oct 13 Python
Python中set与frozenset方法和区别详解
May 23 Python
浅析Python中的多条件排序实现
Jun 07 Python
浅谈Python中range和xrange的区别
Dec 20 Python
Python爬虫库requests获取响应内容、响应状态码、响应头
Jan 25 Python
TensorFlow Saver:保存和读取模型参数.ckpt实例
Feb 10 Python
python中文分词库jieba使用方法详解
Feb 11 Python
Python操作MongoDb数据库流程详解
Mar 05 Python
python中str内置函数用法总结
Dec 27 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连接SQLServer2005方法及代码
2013/12/26 PHP
PHP5.5在windows安装使用memcached服务端的方法
2014/04/16 PHP
php实现SAE上使用storage上传与下载文件的方法
2015/06/29 PHP
Zend Framework教程之前端控制器Zend_Controller_Front用法详解
2016/03/07 PHP
PhpStorm terminal无法输入命令的解决方法
2016/10/09 PHP
Laravel 集成微信用户登录和绑定的实现
2019/12/27 PHP
jQuery 获取URL的GET参数值的小例子
2013/04/18 Javascript
JavaScript省市联动实现代码
2014/02/15 Javascript
关于Bootstrap弹出框无法调用问题的解决办法
2016/03/10 Javascript
JavaScript从数组的indexOf()深入之Object的Property机制
2016/05/11 Javascript
Web前端新人笔记之jquery入门心得(新手必看)
2016/05/17 Javascript
Bootstrap图片轮播组件使用实例解析
2016/06/30 Javascript
JavaScript实现in-place思想的快速排序方法
2016/08/07 Javascript
详解使用fetch发送post请求时的参数处理
2017/04/05 Javascript
纯JS实现图片验证码功能并兼容IE6-8(推荐)
2017/04/19 Javascript
浅谈es6中export和export default的作用及区别
2018/02/07 Javascript
关于微信小程序获取小程序码并接受buffer流保存为图片的方法
2019/06/07 Javascript
Javascript实现贪吃蛇小游戏(含详细注释)
2020/10/23 Javascript
详解Python中open()函数指定文件打开方式的用法
2016/06/04 Python
详解python中的文件与目录操作
2017/07/11 Python
Python编程实现线性回归和批量梯度下降法代码实例
2018/01/04 Python
Python函数式编程实例详解
2020/01/17 Python
pytorch使用tensorboardX进行loss可视化实例
2020/02/24 Python
在CentOS7下安装Python3教程解析
2020/07/09 Python
python基于openpyxl生成excel文件
2020/12/23 Python
Haglöfs瑞典官方网站:haglofs火柴棍,欧洲顶级户外品牌
2018/10/18 全球购物
应届生学校辅导员求职信
2013/11/07 职场文书
关于读书的演讲稿
2014/05/07 职场文书
医院保洁服务方案
2014/06/11 职场文书
物业消防安全责任书
2014/07/23 职场文书
大专毕业生自我鉴定范文(2篇)
2014/09/27 职场文书
报名委托书
2015/01/29 职场文书
2019公司借款合同范本2篇!
2019/07/24 职场文书
python3使用diagrams绘制架构图的步骤
2021/04/08 Python
浅谈golang 中time.After释放的问题
2021/05/05 Golang
IIS服务器中设置HTTP重定向访问HTTPS
2022/04/29 Servers