Войдите на сервер с помощью WinSCP.com (строка cmd) без пароля

Я использую машину Windows, и у меня установлен WinSCP.

Я пишу сценарий, который входит на сервер и загружает файл.

Я не хочу хранить пароль учетной записи в скрипте. Могу ли я войти на сервер с каким-то ключом хоста или закрытым ключом или чем-то еще.


person user206168    schedule 18.03.2014    source источник
comment
Честно говоря, это не похоже на то, что вы хотите использовать WinSCP, а скорее сам протокол (S) FTP.   -  person timss    schedule 18.03.2014
comment
В Windows есть PSFTP.exe, с помощью которого я могу войти в систему, но для доступа на сервер по-прежнему требуется пароль. как я могу войти без пароля или с паролем, если он защищен.   -  person user206168    schedule 18.03.2014
comment
Вам понадобится программа, которая хранит пароль и может отправлять его при запросе (S) FTP-сервера. Или напишите сами. Не указано, что вы можете использовать существующие инструменты по своему усмотрению.   -  person timss    schedule 18.03.2014


Ответы (2)


Да, вы можете использовать аутентификацию с открытым ключом. Но для этого вам все равно нужно сохранить закрытый ключ вместе со своим скриптом. Обычно ключ шифруется парольной фразой. Чтобы автоматизировать вход в систему, вам все равно придется сохранить кодовую фразу в файле сценария (с помощью переключателя -passphrase ). Тем не менее, если кто-то получит доступ к вашей машине, он / она все равно сможет украсть вашу личность, как и пароль. Хотя есть преимущество. У вас может быть несколько ключей (а пароль только один). Если вы используете специальный ключ для сценария, и этот ключ когда-либо будет скомпрометирован, вы можете отозвать его, сохранив другие ключи.

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

В любом случае, ваш вопрос в основном повторяет:
Как мне настроить аутентификацию с открытым ключом?

Подробные сведения о WinSCP см. В руководстве по настройке аутентификации с открытым ключом SSH.

См. Также руководство WinSCP по защите учетных данных, используемых для автоматизации.

person Martin Prikryl    schedule 19.03.2014

У меня была аналогичная проблема с Windows, поэтому я использовал Putty вместо http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

Если вам нужно сгенерировать открытый ключ, используйте: http://the.earth.li/~sgtatham/putty/latest/x86/puttygen.exe

Я дал открытый ключ + пароль тому, кто владел сервером SFTP, чтобы он установил его на своей стороне. Я сохранил закрытый ключ на своей стороне, чтобы не сказать "C: \ privatekey.ppk". Вы не используете пароль в своем скрипте, но вы ссылаетесь на закрытый ключ, который должен быть у вас на машине.

Затем, если вы хотите автоматизировать пакетную загрузку с FTP-сервера Pageant, чтобы загрузить закрытый ключ в сеанс http://the.earth.li/~sgtatham/putty/latest/x86/pageant.exe

Затем используйте PSFTP для подключения и выполнения действий http://the.earth.li/~sgtatham/putty/latest/x86/psftp.exe

Итак, вот пример кода для командного файла:

!--Loading the key to session--!
@C:\pageant.exe "C:\privatekey.ppk"
!--Calling the PSFTP.exe with the uaser and sftp address + command list file--!
@C:\psftp [email protected] -b C:\sftp_cmd.txt

Файл списка команд (sftp_cmd.txt) будет выглядеть примерно так:

mget "*.*" !--downloading every thing
!--more commands can follow here
close

Теперь все, что вам нужно, чтобы запланировать его в запланированных задачах * Я бы хотел, чтобы это было просто, как задание cron в unix ....

person Gil Allen    schedule 12.05.2015