У меня есть скрипт с командами ssh, которые используют прыгающий хост:
scp -J user@jump file admin@server
ssh -J user@jump admin@server "touch hello"
Я хотел бы запросить пароли только один раз и попробовал sshpass
:
sshpass -p "PasswordForJump" scp -J user@jump file admin@server
Это спросит пароль только для admin@server. Однако, поскольку есть две команды ssh/scp, мне все равно приходится вводить пароль администратора дважды.
Я пытался вложить sshpass
, но скрипт блокируется:
sshpass -p "PasswordForJump" sshpass -p "PasswordForServer" ssh -J user@jump admin@server
Наивно я попытался задать два пароля в файле (по одному на строку), ожидая, что sshpass
будет использоваться один за другим, но и это не удалось.
Могу ли я использовать sshpass
для ввода двух паролей?
Я заставил его работать с командой прокси:
> sshpass -p serverpassword ssh -oProxyCommand="sshpass -p gatewaypassword ssh -W %h%p uname@gatwayserver" uname@targetserver