Вы не можете использовать проксирование / туннелирование в качестве ssh-ключа хранится на сервере прыжков и недоступен локально. В идеале вы создаете новый ключ и добавляете его в ~ / .ssh / authorized_keys
на DestinationHost
, но это может быть невозможно.
Самый простой способ настроить это - использовать удаленную команду и переадресацию через два локальных порта.
Открыть терминал на DestinationHost :
ssh -t HopHostUser @ HopHost «ssh DestinationHost»
Открыть терминал + перенаправление портов с DestinationHost на Localhost ]:
ssh -t -L8081: localhost: 9999 HopHostUser @ HopHost "ssh -L9999: localhost: 80 DestinationHost"
Лучше всего использовать для этого вашу конфигурацию ssh. Это очень долго.
Это можно было бы изменить, чтобы использовать "мы уже там?" проверка здравомыслия, а не сон на шестую долю минуты:
#!/bin/bash -x
cd ~/Downloads
curl -O https://dl.google.com/chrome/mac/stable/CHFA/googlechrome.dmg
open ~/Downloads/googlechrome.dmg
while ! [[ -d /Volumes/Google\ Chrome/ ]]; do
sleep 1
done
cp -R /Volumes/Google\ Chrome/Google\ Chrome.app /Applications && open
/Applications/Google\ Chrome.app
diskutil eject Google\ Chrome
Однако, в случае, если .dmg
не удается установить или по какой-то причине установить в другом месте, это будет крутиться до конца времен.
Немного лучше, чем передавать это open
, хотя (который просто просит Finder притвориться, что мы дважды -щелкнули файл ), давайте смонтируем его сами:
#!/bin/bash -x
cd ~/Downloads
curl -O https://dl.google.com/chrome/mac/stable/CHFA/googlechrome.dmg
set -o pipefail
if mountpoint=$(hdiutil attach googlechrome.dmg | awk 'END { print $1 }'; then
cp -R /Volumes/Google\ Chrome/Google\ Chrome.app /Applications && open
/Applications/Google\ Chrome.app
hdiutil detach "$mountpoint"
fi