Выполнение sftp с использованием pysftp, но получение ошибки hostkey

Попытка подключиться к sftp-серверу с помощью ssh-ключа

#!/bin/python

import pysftp
with pysftp.Connection(host='sftp.myserver.com', username='stg', private_key='/Users/joel/.ssh/id_rsa_sftp', private_key_pass='') as sftp:

И я получаю

raise SSHException("No hostkey for host %s found." % host)

person Joel Divekar    schedule 30.10.2019    source источник
comment
См. Раздел Проверка ключа хоста с помощью pysftp.   -  person Martin Prikryl    schedule 31.10.2019
comment
это известная проблема с pysftp = 0.2.9, поэтому я перешел на paramiko   -  person Joel Divekar    schedule 01.11.2019
comment
Возможный дубликат сообщения Не удалось загрузить предупреждение HostKeys при подключении к SFTP-серверу с помощью pysftp   -  person Martin Prikryl    schedule 06.11.2019


Ответы (1)


Вы можете использовать мою вилку pysftp из github и добавить auto_add_key=True
Это добавит ключ хоста в первое подключение к вашему known_hosts файлу ...

import pysftp

with pysftp.Connection('hostname', username='me', password='secret', auto_add_key=True) as sftp:
    with sftp.cd('public'):             # temporarily chdir to public
        sftp.put('/my/local/filename')  # upload file to public/ on remote
        sftp.get('remote_file')         # get a remote file
person Fabian    schedule 02.11.2019