jueves, 19 de mayo de 2011

Cerrar una sesión de telnet ordenadamente

telnet towel.blinkenlights.nl
Antes de que el ssh se extendiera como la forma de inicio de sesión remota a servidores UNIX y Linux, era frecuente realizar sesiones de telnet para acceso a una consola del servidor. Actualmente, el uso del telnet se limita prácticamente a realizar sesiones 5250 o 3270 hacia AS/400 o Mainframes o se reduce a realizar meras pruebas de conectividad TCP básicas cuando no tenemos el hping a mano y un tcptraceroute nos resulta teclear demasiado.

Siempre que realizamos un telnet solemos ver un mensaje "Escape character is '^]'." como el siguiente:

zarza@szarza:~$ telnet ftp.es.debian.org 80
Trying 82.194.78.250...
Connected to ftp.es.debian.org.
Escape character is '^]'.
^]
telnet> quit
Connection closed.
szarza@szarza:~$

Hasta ahora, nunca había sabido cancelar las conexiones de telnet que se quedaban pegadas, así que acababa matando la sesión cerrando el proceso padre del telnet (konsole, xterm, cmd.exe, etc) porque no me había preocupado de saber cómo obtener y enviar la famosa secuencia "^]". Sin embargo, es bastante sencillo: se trata de la combinación CTRL+ALT GR+], lo cual es lógico: "^" significa CTRL y el carácter ] se obtiene pulsando la tecla "Alt Gr"+]. Una vez en el prompt del telnet, podemos poner "quit" para salir.

Por otro lado, este artículo me ha servido para comprobar que sigue estando disponible la película Star Wars Episode IV en ASCII vía telnet haciendo "telnet towel.blinkenlights.nl" gracias a Simon Jansen.

4 comentarios :

  1. Pues a mi me gusto más el libro que la peli esta en ascii.

    ResponderEliminar
  2. La pelicula en ASCII es fenomenal. Hay gente que realmente tiene mucho tiempo en sus manos.

    ResponderEliminar
  3. Excelente me sirvió, en mi caso el carácter lo saco con la tecla shift más el carácter, te agradezco mucho, ahora ya no tengo que matar todo para salir de una sesión telnet, me pregunto si existe algún comando para realizar un aprueba de conexión como telnet, pero que automáticamente se cierre en cuanto valides que si existe la conexión.

    ResponderEliminar
    Respuestas
    1. Hola:
      Ante todo, disculpa la tardanza en contestar. Con respecto a tu pregunta, puedes usar Netcat, así:

      nc -z {host} {port} ; echo $?

      Si la salida es 0 el host tiene el puerto abierto, 1 en caso contrario. Por ejemplo:

      nc -z localhost 22 ; echo $?

      devuelve 0 (tengo el puerto 22 abierto)

      Consulta netcat en la red y encontrarás mucha información muy interesante, por ejemplo, http://crysol.org/es/netcat.

      Eliminar

Related Posts Plugin for WordPress, Blogger...
cookieassistant.com