8 votos

¿Cómo se puede introducir el SSH en Android desde una red diferente?

Estoy ejecutando SSHDroid en mi dispositivo Android sin root. Cuando mi cliente SSH en ubuntu o Windows están en la misma red wifi que el Android, puedo conectarme a él a través de SSH.

Pero lo que quiero hacer es, conectarme al dispositivo vía SSH desde un cliente como masilla etc. desde un ordenador que no esté en la misma red.

Por ejemplo. Si estoy en la misma red wifi, puedo conectarme vía SSH usando el comando

$ ssh Root@192.168.1.3 -p 2222

pero cuando me conecto vía ssh usando IP externa, dice conexión rechazada.

$ ssh Root@112.79.41.234 -p 2222

También intenté usar PortForward para reenviar el puerto externo al interno. Pero no parece funcionar. ¿Alguien puede decirme cómo hacerlo sin rootear el dispositivo?

2voto

david6 Puntos 371

Respuesta rápida:

No es necesario que "arraigue" su teléfono Android, tanto éste como el SSH funcionan correctamente.


Cómo resolver el problema:

Tienes que entender mejor el "reenvío de puertos" y las "direcciones IP públicas".

El "reenvío de puertos" debe ocurrir donde la red pública ("Internet") se encuentra con la red privada (red WiFi con dispositivo Android). Esto suele ser un "router", pero podría ser un "cortafuegos" más grande.

Tienes que averiguarlo y añadir este detalle, si quieres más ayuda

0voto

ce4 Puntos 11180

Aunque el reenvío a puerto funcionará, no lo sugiero.

Está atado a restricciones muy firmes:

  • Abandona el DHCP y usa una IP estática en cada red en la que quieras trabajar
  • Establecer reglas de reenvío de puertos en cada enrutador
  • Configurar DNS dinámico para cada red
  • Saber en qué red está tu Android

Mejor que tu teléfono se conecte a la misma red privada virtual (VPN) y acceda a ella a través de esto. O usa GTalkSMS para una configuración más fácil.

0voto

El conflicto de direcciones IP puede resultar, al principio compruebe que el conflicto de direcciones era o no el problema.

Para esto, por favor, eche un vistazo

En cuanto a su red, compruebe /var/log/messages para el enlace ethernet up/downs (o wlan en caso de wireless). Si es así, intente cambiar los cables.

No es un simple problema de conectividad. El enlace ethernet no cambia de estado; el servidor es accesible vía ping; ssh se conecta sin problemas ocasionalmente, luego aparentemente al azar no se conecta o la sesión existente de ssh se cae.

  • Cambie el adaptador del DHCP a estático.
  • Prueba ssh -v ip y comprueba la salida

0voto

GalleySlave Puntos 1488

Podrías configurar un actualizador dinámico del DNS. Esto le permitirá acceder a su dispositivo Android usando la misma dirección IP de Internet sin importar dónde se encuentre. Necesitarás una cuenta con un proveedor de DNS dinámico [1] y un servidor SSH Android que incluya/soporte una herramienta de actualización de DNS [2].

El proveedor de DNS dinámico le asignará una dirección IP fija, que podrá utilizar en cualquier lugar donde se encuentre. Las limitaciones de la red (técnicas o impuestas) todavía pueden impedirle el acceso a su dispositivo en algunas circunstancias.

[1] Por ejemplo, DNS-o-matic . Hay bastantes proveedores gratuitos.

[2] Servidor SSH de Ice Cold Apps ofrece explícitamente soporte para DNS dinámico. No se menciona nada en el SSHDroid página, pero podrías consultarlos.

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X