Нужно пропустить ввод пароля в скрипте

360
Artem Shelukhin

Иметь сценарий оболочки на сервере Unix, который необходим для запуска другого сценария с компьютера с Windows. И проблема в том, что скрипт на машине с Windows должен получить отпечаток ключа (он расположен на ftp-сервере), чтобы пропустить ввод пароля, и я не знаю, как это сделать. Нужна ваша помощь, ребята!

0
Скрывая разумную информацию, можете ли вы добавить строку, которая запускает скрипт Unix из Windows? Hastur 9 лет назад 0
Удачного пошива. Hastur 9 лет назад 0

1 ответ на вопрос

1
Hastur

Кажется, что [ 1 ] putty обычно поставляется с утилитой "plink".

По сути, это команда командной строки "ssh", реализованная в виде Windows .exe.
Это довольно хорошо задокументировано в руководстве по замазке в разделе « Использование утилиты командной строки plink ». Вам просто нужно обернуть команду как:

plink root @ myserver /etc/backups/do-backup.sh

From the comment of the same answer it comes out that

In addition you can use pageant to allow the key to be loaded and used so there is no need to enter the key's passphrase each time.

In another answer it is reported [2] to use a command line as

putty.exe -ssh -2 -l username -pw password -m c:remote.cmd remote_host 

of course you can add the specification you need for the ssh-keys you need.

You can find interesting to read more on the manual of putty, for example in the section 4.17 [3], some example [4], the ssh manual [5]... and last but not least "Howto force ssh to use a specific private key" [6] reported her below:

ssh -o "IdentitiesOnly=yes" -i <private key filename> <hostname>