Безопасна ли реализация Python paramiko SSHClient для загрузки больших файлов на удаленный сервер? - PullRequest
0 голосов
/ 25 октября 2019

Я пытаюсь загрузить файл на удаленный сервер, используя SSH. Я сгенерировал пару ключей, и открытый ключ зарегистрирован как известный пользователь для сервера.

Я написал небольшой скрипт на Python (3.8), который подключается к серверу и загружает файл (в настоящее время размеромоколо 100 МБ) на сервер. На данный момент код выглядит следующим образом:

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

with open(f_, "rb") as f:
    with client.open_sftp().file("testing.txt", "ab") as nf:
        for chunk in iter(lambda: f.read(chunk_size*kibibytes), b''):
            nf.write(chunk)

Мой вопрос: Это безопасно? Предполагается, что он будет использоваться для передачи конфиденциальных данных, поэтому яне нужно делать глупых ошибок и т. д. Если нет, то что я делаю неправильно и как я могу это исправить? Советы по улучшению кода также приветствуются.

В дополнение к этому, в дальнейшем загруженные файлы будут сжаты, зашифрованы и хэшированы и т. Д., А затем загружены на S3.

Заранее спасибо!

...