Я пишу сценарий, чтобы сделать sftp для Windows (сервер) с Linux-машины. Я хотел, чтобы скрипт запускался без ручного ввода, например ввода пароля и т.д.

#!/bin/sh
HOST='10.x.x.x'
USER='user'
PASSWD='passwd'

sftp $USER@$HOST

Я использую freeftpd в качестве SFTP-сервера на компьютере с Windows. С конца Linux на данный момент я использую Ubuntu, но мое реальное требование будет для урезанной версии Linux для машины на базе ARM.

На Linux-машине я генерирую открытый и закрытый ключи, используя ssh-keygen -t rsa . Два файла (открытый и закрытый) генерируются в /home/user/.ssh , т.е. id_rsa и id_rsa.pub .

Если это еще одна машина Linux, я знаю, что мне нужно добавить открытый ключ (id_rsa.pub) в файл authorized_keys .

Сейчас я не уверен, так как мой SFTP-сервер работает на Windows. После установки freeFTPd я зарегистрировался в C:\Program Files\freeFTPd\ , но я не вижу никаких файлов, похожих на .ssh/authorized_keys как в Linux.

FreeFTPd имеет возможность генерировать закрытый ключ. Поэтому я сгенерировал один и скопировал его в файл машины Linux (.ssh/id_rsa) и попробовал. Но он все равно запрашивает пароль.

Как я могу решить это.

1 ответ1

1

Я не знаю Windows, но вы, кажется, ошибаетесь в этом:

  • SFTP не означает секретную реализацию простого протокола FTP, но протокола передачи файлов SSH, поэтому сервер должен отвечать не по протоколу FTP , а по SSH ! (Из википедии :)

    SSH протокол передачи файлов

    Из Википедии, свободной энциклопедии
    Перейти к: навигация, поиск
    Не следует путать с простым протоколом передачи файлов.
    В вычислительной технике SSH File Transfer Protocol (также протокол Secure File Transfer Protocol , Secure FTP или SFTP) - это сетевой протокол, который обеспечивает функции доступа к файлам, передачи файлов и управления файлами через любой надежный поток данных. Он был разработан Internet Engineering Task Force (IETF) как расширение протокола Secure Shell Protocol (SSH) версии 2.0 для обеспечения возможности безопасной передачи файлов ...

Таким образом, вы должны установить SSH Server на ваших окнах.

Взгляни на:

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