Lo que tengo es lo mismo que esta pregunta SSH túnel a través de dos servidores para acceder a un servicio web en el puerto 9091 (principalmente porque hice esa pregunta).
Pero la diferencia ahora es que estoy accediendo desde un Chromebook que no puedo usar ProxyCommand
. Todo lo que tiene es el shell de NaCl base que se ejecuta en una pestaña de Chrome sandboxed.
Esta es la "aplicación de shell" que lo ejecuta: https://chrome.google.com/webstore/detail/secure-shell/pnhechapfaindjhompbnflcldabbghjo?utm_source=chrome-app-launcher-info-dialog
Estas son las preguntas frecuentes con información completa al respecto. https://chromium.googlesource.com/apps/libapps/+/master/nassh/doc/faq.txt
Entonces, una revisión de mi pregunta anterior:
Tengo 3 máquinas:
remotePi
(Raspberry PI, en algún lugar del mundo)localPi
(otro PI de frambuesa, en mi red local, tengo acceso completo a él, incluido root, sin monitor, sin kb, ejecutándose como servidor sin cabeza)Chromebook
(mi máquina local, que es una Chromebook en la misma red local quelocalPi
, limitada pero tiene el SSH según los enlaces anteriores).
remotePi
tiene un túnel SSH constante a localPi
, lo hace llamando al siguiente comando
ssh -N -R 16864:localhost:22 -p 2222 <user_on_lan>@<external_lan_ip>
Puedo acceder a la remotePi
terminal haciendo
Chromebook> ssh <user_on_localPi>@<localPI_ip>
localPi> ssh -l <user_on_remotePi> -p 16846 localhost
Y remotePi
tengo un servicio de demonio (interfaz web) escuchando 9091
.
un "dibujo" de todo:
16864:tunnel:22 9091:service
Chromebook <--local_net--> localPi <--internet--> remotePi
Entonces, lo que necesito es:
Acceda a la interfaz web del servicio daemon en remotePi llamando a mi
Chromebook
navegador127.0.0.1:9091/web/
En mi computadora anterior (que se muestra en la pregunta vinculada, computadora portátil ubuntu) lo estaba haciendo usando ProxyCommand
mi configuración y llamando ssh -L9091:localhost:9091 user_on_remotePi@remotePi -N
, pero ahora estoy en un Chromebook que no puede usarlo y creo que debe haber una manera de hacerlo de todos modos
Entonces me preguntaba sobre 2 posibles soluciones:
algún comando SSH muy inteligente y largo que "reemplazará" lo que
ProxyCommand
estaba haciendo. Siempre veo esto en tutoriales como ese LINK, pero siempre depende del nombre del host, solo tengo el puerto16864
para conectarme.(preferido) agregue algo de magia a la
localPi
configuración SSH que lo hará escuchar en algún puerto no estándar (digamos2222
) y redirigirá automáticamente esa conexiónuser_on_remotePi:localhost:16864
. Entonces, cuando llamo desde Chromebookssh user_on_localPI -p 2222 localPi_ip
,localPi
redirigirá esto al usuario correcto directamente en remotePi.
Como puede observar, soy un novato en la red, mi principal experiencia en el desarrollo de aplicaciones, por lo que cualquier ayuda aquí le estaré extremadamente agradecida.
¿Algunas ideas?