免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 9640 | 回复: 6

windows下使用paramiko进行SSH的连接和交互不成功 [复制链接]

论坛徽章:
0
发表于 2016-02-17 15:11 |显示全部楼层
我想通过python脚本去自动抓取山石防火墙上的配置实现定期备份,但是用paramiko进行不成功,无论什么命令都没有回显
代码如下:
#-*- coding: utf-8 -*-
import paramiko,time
#paramiko.util.log_to_file('C:\Users\Administrator\Desktop\2.txt')
def ssh2(ip,username,passwd,cmd):
    try:
        ssh = paramiko.SSHClient()
        ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
        ssh.connect(ip,22,username,passwd,timeout=5)
        stdin,stdout,stderr = ssh.exec_command(cmd)
        print stdout.read()
        for x in  stdout.readlines():
          print x.strip("\n")
        print '%s\tOK\n'%(ip)
        ssh.close()
    except :
        print '%s\tError\n'%(ip)
ssh2("172.16.0.1","xxxx","xxxx","show config")
回显如下:
1.png
同样的代码 连接思科交换机是有正常回显的:
2.png
问题如下:
这个是什么问题?怎么解决?
怎么能看到连接的状态?(是否连接上?命令是否正常执行了?)

论坛徽章:
41
操作系统版块每日发帖之星
日期:2016-08-21 06:20:00每日论坛发贴之星
日期:2016-05-05 06:20:00操作系统版块每日发帖之星
日期:2016-05-05 06:20:00IT运维版块每日发帖之星
日期:2016-05-05 06:20:0015-16赛季CBA联赛之山西
日期:2016-04-27 08:49:00操作系统版块每日发帖之星
日期:2016-04-25 06:20:00操作系统版块每日发帖之星
日期:2016-04-17 06:23:2815-16赛季CBA联赛之吉林
日期:2016-03-25 15:46:3415-16赛季CBA联赛之四川
日期:2016-03-25 14:26:19操作系统版块每日发帖之星
日期:2016-05-27 06:20:00操作系统版块每日发帖之星
日期:2016-05-28 06:20:00IT运维版块每日发帖之星
日期:2016-08-18 06:20:00
发表于 2016-02-17 16:41 |显示全部楼层
我记得要用标准输入输出来抓取,如果有错误提示,你没用错误输出显示,就会hang在那里
  1. #!/usr/bin/python

  2. import paramiko

  3. paramiko.util.log_to_file('/root/pyscript/log.log')

  4. ssh=paramiko.SSHClient()
  5. ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

  6. ssh.connect('1.1.1.1',port=22,username='123',password='1234567,.')

  7. stdin,stdout,stderr=ssh.exec_command('ls')

  8. ssh.close()
复制代码

论坛徽章:
0
发表于 2016-02-17 17:00 |显示全部楼层
不行 我用你的脚本试了还是这样。。。山石没有任何回显,思科回显正常
我觉得是不是里面少了什么参数。。。

jixuuse 发表于 2016-02-17 16:41
我记得要用标准输入输出来抓取,如果有错误提示,你没用错误输出显示,就会hang在那里

论坛徽章:
41
操作系统版块每日发帖之星
日期:2016-08-21 06:20:00每日论坛发贴之星
日期:2016-05-05 06:20:00操作系统版块每日发帖之星
日期:2016-05-05 06:20:00IT运维版块每日发帖之星
日期:2016-05-05 06:20:0015-16赛季CBA联赛之山西
日期:2016-04-27 08:49:00操作系统版块每日发帖之星
日期:2016-04-25 06:20:00操作系统版块每日发帖之星
日期:2016-04-17 06:23:2815-16赛季CBA联赛之吉林
日期:2016-03-25 15:46:3415-16赛季CBA联赛之四川
日期:2016-03-25 14:26:19操作系统版块每日发帖之星
日期:2016-05-27 06:20:00操作系统版块每日发帖之星
日期:2016-05-28 06:20:00IT运维版块每日发帖之星
日期:2016-08-18 06:20:00
发表于 2016-02-17 17:40 |显示全部楼层
有可能是设备系统的问题,你试试用telnet链接显示是否正常。

有些嵌入式系统ssh连过去执行了enable之类的指令以后是自己起了一个应用cli,导致ssh抓不到数据

论坛徽章:
0
发表于 2016-02-17 17:56 |显示全部楼层
telnet我之前就试过山石可以成功
SSH这边我测试了思科 山石和华为
结果是思科能正常显示,山石无回显 华为直接卡住
如果是另起cli那山石的telnet应该也是无回显的对吧?并且我也没有enable
感谢你的指导!
回复 4# jixuuse


   

论坛徽章:
41
操作系统版块每日发帖之星
日期:2016-08-21 06:20:00每日论坛发贴之星
日期:2016-05-05 06:20:00操作系统版块每日发帖之星
日期:2016-05-05 06:20:00IT运维版块每日发帖之星
日期:2016-05-05 06:20:0015-16赛季CBA联赛之山西
日期:2016-04-27 08:49:00操作系统版块每日发帖之星
日期:2016-04-25 06:20:00操作系统版块每日发帖之星
日期:2016-04-17 06:23:2815-16赛季CBA联赛之吉林
日期:2016-03-25 15:46:3415-16赛季CBA联赛之四川
日期:2016-03-25 14:26:19操作系统版块每日发帖之星
日期:2016-05-27 06:20:00操作系统版块每日发帖之星
日期:2016-05-28 06:20:00IT运维版块每日发帖之星
日期:2016-08-18 06:20:00
发表于 2016-02-17 18:16 |显示全部楼层
我这么说是因为我这边公司自己做的AP就是这么操作的,所以知道有这么个坑,SSH连过去实际是系统自己执行了一个telnet 127.0.0.1的操作,如果你用程序去抓,有可能抓不到数据,直接telnet连一切正常

论坛徽章:
0
发表于 2016-02-17 18:21 |显示全部楼层
谢谢你的解答哈!
回复 6# jixuuse


   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP