2011-04-09 54 views
21

Quiero saber si es posible hacer telnet en un determinado puerto de un teléfono Android conectado a través de USB. He visto que si telnet localhost: 5556, voy al emulador.Android: ¿cómo hacer telnet en un teléfono?

¿Podría hacer algo similar cuando conecto un dispositivo físico? ¿Qué comandos podrían manejarse?

Respuesta

15

Bueno, adb shell es la forma de conectarse al terminal. De hecho, puede telnet a cualquier puerto que desee en el dispositivo, solo necesita una aplicación que escuche ese puerto. No creo que los dispositivos ofrezcan la misma funcionalidad que el emulador ya que permitiría a los usuarios maliciosos hacer una serie de cosas. Además, la funcionalidad proporcionada a través de telnet con los emuladores está diseñada para proporcionar una funcionalidad de desarrollo para superar la limitación de no estar en un dispositivo físico (reenvío de puertos, etc.). No estoy seguro de cuál es el objetivo, pero podría crear una aplicación que admite telnet y vinculado a un puerto específico en el dispositivo si así lo desea.

+0

pescador:/$ telnet localhost 5554 /system/bin/sh: telnet: no encontrado, no funciona – Osgux

2

Si tiene Android Device Bridge, un simple adb shell debería darle acceso a una línea de comando.

EDIT: No he probado esto, pero puede verificar/system/bin para "telnetd". Intenta ejecutar esto y luego escribe "netstat". Debería recibir una dirección IP de netstat, y puede hacer telnet a esa dirección IP.

+0

bien, pero quería intentar hacer telnet en un puerto de certaint. – Cris

13
  1. En su teléfono Android, usted debe tener una terminal.apk (app) o alguna otra aplicación de terminal instalado. También necesita busybox (app), y supongo que ya ha rooteado su dispositivo Android. abrirla, escriba los comandos de la siguiente manera:

    su

    busybox telnetd -l /system/bin/sh

  2. Ahora en su comando de tipo lado Machhine cliente de la siguiente manera:

    adb forward tcp:6000 tcp:23

    telnet 127.0.0.1 6000

~~ allí va

+0

¿Por qué usar tcp: 23? ¿Cuál es la razón detrás de esto? –

+0

@AniketThakur El puerto TCP 23 es el puerto telnet predeterminado. Pero requiere que setuid root (su) funcione. –

+1

Simon - +1 para hipervínculos. – v1h5

8

Hay una aplicación de Android gratuita "Terminal IDE" disponible en Google Play. Instalarlo. Esta aplicación tiene una terminal incorporada, abre la terminal y escribe telnetd, iniciará el servicio de telnet en el teléfono Android. Conecte el teléfono a la PC con usb. En símbolo del sistema escriba

  1. ADB TCP hacia adelante: [su número de puerto] tcp: 8080
  2. telnet 127.0.0.1:[your número de puerto]

su hacer !!!

+0

¿Por qué usar tcp: 8080? ¿Cuál es la razón detrás de esto? –

+1

@AniketThakur si no eres root setuid, necesitas usar port> 1024. 8080 es una opción popular por defecto. –

Cuestiones relacionadas