Как получить доступ к серверу, используя SFTP без пароля на языке Python - PullRequest
0 голосов
/ 17 мая 2019

Это код для соединения без пароля через paramiko. Когда я запускаю этот код, он показывает, что закрытый файл RSA неверен, что это такое и как решить эту проблему.

. Пожалуйста, объясните значение третьей последней строки, как сгенерировать ключ.В Windows я предоставляю код ниже, пожалуйста, помогите

Код:

#get IP and username for remote access
IP = input("Enter host_server IP: ").split()
username = input("Enter username: ").split()


#create a file on host_server for file
file_a = open(date+"file.txt", "a") #ignore the date variable
file = str(date+"file.txt")
import paramiko
import os
privatekeyfile = os.path.expanduser('~/.ssh/id_rsa')
mykey = paramiko.RSAKey.from_private_key_file(privatekeyfile)
ssh.connect(IP[0], username = user[0], pkey = mykey)

1 Ответ

0 голосов
/ 17 мая 2019

Вам нужно будет создать пару ключей SSH , которая состоит из личного и открытого ключа.

Закрытый ключ должен храниться на вашем собственном компьютере, по умолчанию в~/.ssh/id_rsa под Linux или C:\users\your_name\.ssh\id_rsa под Windows, но вы можете использовать другое имя файла в той же директории, чтобы вы знали, какой ключ это позже (вам может понадобиться создать больше ключей SSH в будущем).Это файл, используемый paramiko.

Открытый ключ должен быть скопирован на сервер.Как это сделать, зависит от вашей настройки.Если это ваш собственный SFTP-сервер, вы можете сделать это, используя SSH или SCP.Также возможно, что вы можете сделать это через веб-интерфейс.Обратитесь к руководству вашего SFTP-сервера / службы за дополнительной информацией.

Пара ключей SSH может быть создана с помощью ssh-keygen.В Linux это, вероятно, уже установлено.В Windows вы, вероятно, получите его, если у вас установлен PuTTY.

Выполните поиск «генерировать пару ключей ssh» или что-то в этом роде, чтобы получить больше информации о том, как создавать ключи, если вы не знаете, как это сделать.сделай это.Есть много сайтов, которые описывают, как это сделать.

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