У меня такой же, как этот вопрос SSH туннель через два сервера для доступа к веб-сервису через порт 9091 (в основном потому, что я задал этот вопрос).
Но теперь разница в том, что я обращаюсь к нему с Chromebook, который не может использовать ProxyCommand
. Все, что он получил, - это базовая оболочка NaCl, работающая в изолированной вкладке Chrome.
Это "приложение оболочки", которое его запускает: https://chrome.google.com/webstore/detail/secure-shell/pnhechapfaindjhompbnflcldabbghjo?utm_source=chrome-app-launcher-info-dialog
Это FAQ с полной информацией о нем. https://chromium.googlesource.com/apps/libapps/+/master/nassh/doc/faq.txt
Итак, обзор из моего предыдущего вопроса:
Я получил 3 машины:
remotePi
( Raspberry PI, где-то в мире)localPi
(еще один Raspberry PI, в моей локальной сети, у меня есть полный доступ к нему, в том числе root, без монитора, без kb, работает как безголовый сервер)Chromebook
(моя локальная машина, которая является Chromebook в той же локальной сети, что иlocalPi
, ограничена, но имеет SSH согласно ссылкам выше).
remotePi
есть постоянный туннель SSH к localPi
, он делает это, вызывая следующую команду
ssh -N -R 16864:localhost:22 -p 2222 <user_on_lan>@<external_lan_ip>
Я могу получить доступ к терминалу remotePi
, выполнив
Chromebook> ssh <user_on_localPi>@<localPI_ip>
localPi> ssh -l <user_on_remotePi> -p 16846 localhost
И в remotePi
меня есть служба демона (веб-интерфейс) прослушивания на 9091
.
"рисунок" всего:
16864:tunnel:22 9091:service
Chromebook <--local_net--> localPi <--internet--> remotePi
Итак, что мне нужно, это:
Чтобы получить доступ к веб-интерфейсу службы демонов в remotePi, позвоните в браузер
Chromebook
127.0.0.1:9091/web/
На моем предыдущем компьютере (показанном на связанном вопросе, ноутбук с Ubuntu) я делал это с помощью ProxyCommand
в моей конфигурации и вызывал ssh -L9091:localhost:9091 user_on_remotePi@remotePi -N
, но теперь я на Chromebook, который может ' Я использую это, и я считаю, что должен быть способ сделать это в любом случае.
Поэтому мне было интересно узнать о 2 возможных решениях:
какая-то очень умная и длинная команда SSH, которая "заменит" то, что делала
ProxyCommand
. Я всегда вижу это в уроках, подобных этой ССЫЛКЕ, но это всегда зависит от имени хоста, у меня есть только порт16864
для подключения.(предпочтительно) добавьте немного магии в конфигурацию
localPi
SSH, которая заставит его прослушивать какой-то нестандартный порт (скажем,2222
) и автоматически перенаправить это соединение наuser_on_remotePi:localhost:16864
. Итак, когда я звоню из Chromebookssh user_on_localPI -p 2222 localPi_ip
, тоlocalPi
перенаправит его нужному пользователю прямо на remotePi.
Как вы можете заметить, я немного новичок в сети, мой основной опыт в разработке приложений, поэтому за любую помощь здесь я буду чрезвычайно благодарен.
Есть идеи?