Exscript: доступ к удаленным сетевым устройствам через хост-бастион, в то же время используя специальные драйверы устройств для распознавания приглашения устройства

Я пытаюсь получить доступ к сетевым устройствам, которые доступны только в том случае, если вы используете ssh с хоста-бастиона, на котором работает SunOS (без поддержки прокси-команд или туннелирования ssh)

Мой подход заключается в использовании универсального драйвера для доступа к хосту бастиона. и оттуда использовать ' ssh remotedevicename' для подключения к удаленному устройству.

В моем случае удаленное устройство требует только одного шага аутентификации, который переводит меня в приглашение # (уровень доступа 15 для устройств Cisco)

Мне удается успешно пройти проверку подлинности, но я не могу отправлять команды

Вот что я использую

conn = SSH2()  
conn.debug=5  
conn.set_driver('generic')          
conn.connect('bastion')  
conn.login(account)        
print conn.response
conn.send('ssh 1.1.1.1\n')
conn.expect('Password:')
print conn.response
conn.send('password\n')

На данный момент я думаю, что я должен изменить драйвер с

conn.set_driver('nxos')
conn.execute ("show cdp neighbors\n")

но после этого сценарий завершает работу с

nxos: Sending 'show cdp neighbors\n\r'
nxos: Expecting a prompt
nxos: Expected pattern: ["'[\\\\r\\\\n][\\\\-\\\\w+\\\\.:/]+(?:\\\\([^\\\\)]+\\\\))?[>#] ?$'"]
Traceback (most recent call last):

1 ответ

Вышеприведенная последовательность в порядке, мне не хватало "длины терминала 0", и скрипт застрял с этим

Другие вопросы по тегам