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", и скрипт застрял с этим