Здравствуйте, sambl4, Вы писали:
S>В составе putty есть plink.exe, который собственно и занимается удалённым выполнением команд. Смотрели его возможности?
Нет, не смотрел. Спасибо. Иду Изучать.
Здравствуйте, vsb, Вы писали:
vsb>Рекомендую следующий вариант.
vsb>На сервере разрешить вход по ключу пользователю user_name. Это позволит обойтись без промежуточного пользователя и вызова sudo, а также без ввода пароля в ssh.
vsb>В Java просто запустить ssh как отдельный процесс. Что-то вроде "ssh user_name@server /path/to/script.sh". Вот и всё. Это для юникса, что там в путти, я не знаю, скорее всего что-то похожее. Вообще лучше такие задачи делать из-под юникса, венда для этого только препоны будет чинить.
vsb>Если разрешить вход по ключу пользователю user_name нельзя (долбанутые админы, например), то надо написать на сервере отдельный скрипт, который будет запускать sudo и всё остальное. Либо просто через sudo -u user_name /path/to/script.sh, если пароль sudo не просит, либо с помощью программы expect, если надо вводить пароль, реально надо запускать подпроцесс шелла, выполнять там какие-то команды. Но это уже самый большой геморрой и изврат.
vsb>Java тут в целом не при чём. От неё надо просто запустить ssh с нужными параметрами, как это делать, я думаю вы знаете или разберётесь. Всё остальное надо настраивать скриптами на удалённом сервере.
Пароли, к сожалению, не отключить. Дикая секретность и все такое. Спасибо за ответ, буду дальше разбираться