0
0 комментариев

Пытаюсь написать скрипт для бэкапа конфига cisco через ssh и модуль paramiko. Сам скрипт:

import paramiko
import datetime
import sys
import os
import time
 
#now = datetime.datetime.now()
 
host = "192.168.100.1"
user = "user"
password = "password"
secret = "password"
port=22
 
client = paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.connect(hostname=host, username=user, password=password, port=port)
stdin, stdout, stderr = client.exec_command('enable')
stdin.write(secret +'\n')
stdin, stdout, stderr = client.exec_command('term len 0')
stdin, stdout, stderr = client.exec_command('sh ver')
a = stdout.read()
print a
f = open('testing.txt', 'a')
f.write(a)
f.close()
client.close()

при запуске выдает

C:\Python27>python.exe d:\cisco_backup_v0.1.py
SSH connection established to 192.168.100.1
Traceback (most recent call last):
  File "d:\cisco_backup_v0.1.py", line 23, in <module>
    stdin, stdout, stderr = client.exec_command('term len 0')
  File "C:\Python27\lib\site-packages\paramiko\client.py", line 341, in exec_com
mand
    chan = self._transport.open_session()
  File "C:\Python27\lib\site-packages\paramiko\transport.py", line 615, in open_
session
    max_packet_size=max_packet_size)
  File "C:\Python27\lib\site-packages\paramiko\transport.py", line 731, in open_
channel
    raise e
EOFError

Версия python 2.7, запускаю под виндой. Если закомментировать эту строку, то ругается дальше. Пробовал без enable пароля просто снять sh ver, тогда все отлично.

В чем ошибка?


Добавить комментарий