1

Я пытаюсь подключиться к SFTP-серверу для нашего клиента и отправить файлы в автоматическом режиме с использованием MS Windows. Данные, которые я получил от клиента, не включают пароль. Вместо этого у меня есть пара открытого и закрытого ключей, использующая PuTTY.

Типичная используемая строка подключения выглядит следующим образом

open sftp://username:password.SFTPURL:port -hostkey="ssh-dss 1024 XXXXXXX"

Я, однако, не понимаю, как указать закрытый ключ в этой связи, а не пароль. Как мне сообщить скрипту, где находится закрытый ключ и есть ли конкретное ключевое слово для использования при соединении с использованием открытого ключа?

Я новичок в этом, поэтому, пожалуйста, потерпите меня.

Спасибо!

1 ответ1

0

Предоставляется ли клиентский инструмент SFTP, или вы можете использовать один из ваших вариантов? Потому что, если у вас есть свобода выбора, я бы порекомендовал попробовать FTP-скрипт Syncplify.me!, что позволяет вам писать такие сценарии, используя аутентификацию с открытым ключом без пароля:

var
  Cli: TSFTPClient;
begin
  Cli := TSFTPClient.Create;
  try
    Cli.ServerAddr := 'your.remote.host';
    Cli.Username := 'username';
    Cli.AddPK('c:\user_key.rsa');
    if Cli.Open then
    begin
      // Add your code here...
      // ...      
      Cli.Close;
    end;
  finally
    Cli.Free;
  end;
end.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .