парамико.SSHException: Ошибка чтения баннера протокола SSH
Я использую Paramiko и пытаюсь подключиться к моему SFTP-серверу. Вот код, который я написал:
class SFTPUploader:
def __init__(self, host, username, password, port):
transport = paramiko.Transport((host, port))
print transport
transport.connect(username = username, password = password)
self.sftp = paramiko.SFTPClient.from_transport(transport)
Я могу подключиться к своему серверу с терминала. этой теме не помогло, так как наш сценарий отличается.
1 ответов
эта ошибка генерируется, когда paramiko не получает баннер протокола или сервер отправляет что-то недопустимое. Если сервер в противном случае работает правильно, это может быть связано с некоторыми сетевыми ограничениями.
можно использовать -vvv
в качестве опции для клиента openssh, чтобы получить больше информации о том, как он подключается, и вы можете легко получить фактический баннер с помощью netcat или telnet на порту 22. Баннер должен начинаться с " SSH -", или paramiko вернет вышеуказанную ошибку немедленно.