2016-08-25 3 views
0

Я использую Paramiko создать SSH сессию на терминальном сервере:Подключение к удаленному хосту из SSH сессии в Paramiko

def startSSH(strUser,strPassPhrase):  
    ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) 
    ssh.connect(hostname="x.x.x.x",port=9922,username=strUser,password=strPassPhrase) 

Когда соединение установлено, мне нужно отправить команду, создать SSH к коммутатору:

def exeCommand(): 
    stdin, stdout, stderr = ssh.exec_command('ssh 10.80.3.20') 
    print(stdout.readlines()) 

, а затем я должен ввести пароль для подключения. Но на экране вывода ничего не отображается, и я не знаю, как отправить строку пароля с помощью Paramiko. Я также пробую

stdin.write('password') 
stdin.flush() 

но ничего не происходит.

enter image description here

ответ

0

Вы должны настроить SSH туннель к вашему «Switch» машины, а затем использовать Paramiko к SSH через туннель.

Инструкции по настройке туннеля SSH см. По этой ссылке: Transparent Multi-hop SSH .

Эти StackExchange ответы также могут быть поучительны:

Смежные вопросы