Как установить SSH соединение в Python - PullRequest
0 голосов
/ 06 ноября 2018

Я использую Python 3.6.6 и мне нужно установить SSH-соединение с сервером.

У меня есть IP-адрес и порт для сервера, и я использую свои учетные данные для входа, обычно через putty. Серверы на Linux / Suse. Мне нужно получить список каталогов в папке сервера и скопировать содержимое одного из файлов. Я использую paramiko, и мне нужно, чтобы соединение было открыто, чтобы я мог выполнять и взаимодействовать с сервером. Я не уверен, что я достаточно ясен.

Ниже мой код

import paramiko 

nbytes = 4096
hostname = '123.123.123.123'
port = 22020
username = 'uname' 
password = 'pwd'
command = 'vi log'

client = paramiko.Transport((hostname, port))
client.connect(username=username, password=password)

stdout_data = []
stderr_data = []
session = client.open_channel(kind='session')
session.exec_command(command)

while True:
    if session.recv_ready():
        stdout_data.append(session.recv(nbytes))
    if session.recv_stderr_ready():
        stderr_data.append(session.recv_stderr(nbytes))
    if session.exit_status_ready():
        break

print ("rec status: ", session.recv_ready())
print ("exit status: ", session.recv_exit_status())
print ("".join(stdout_data))
print ("".join(stderr_data))

session.close()
client.close()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...