Las conexiones remotas han revolucionado la administración de sistemas, permitiendo a los profesionales gestionar servidores sin necesidad de estar físicamente presentes. Si bien protocolos más seguros como SSH dominan el panorama actual, Telnet, a pesar de sus limitaciones, conserva su utilidad para ciertas tareas en entornos controlados. Este artículo profundiza en la configuración y el uso de Telnet en sistemas Linux, explorando su instalación, sintaxis, casos de uso modernos y cruciales consideraciones de seguridad.

Comprendiendo Telnet: Un Protocolo de Comunicación Remota
Telnet, acrónimo de "Teletype Network", es una herramienta de línea de comandos que facilita la comunicación remota y la comprobación de redes. Históricamente, se utilizaba ampliamente para la gestión de servidores y dispositivos. Su funcionamiento se basa en el protocolo de red Telnet, que permite establecer una conexión entre dos terminales, uno actuando como cliente y otro como servidor, para interactuar con el sistema remoto como si fuera local. Sin embargo, la principal debilidad de Telnet reside en su falta de cifrado; todos los datos, incluyendo credenciales sensibles como nombres de usuario y contraseñas, se transmiten en texto plano, lo que lo hace vulnerable a la interceptación en redes no seguras.
A pesar de su declive en favor de alternativas más seguras, Telnet sigue siendo una utilidad valiosa para probar servicios de red, depurar problemas de conectividad, analizar respuestas del servidor y aprender sobre protocolos de red. Es particularmente útil para realizar una interconexión sencilla y rápida entre equipos en redes internas LAN protegidas de accesos externos.
Requisitos Previos para la Configuración de Telnet
Antes de proceder con la configuración del servidor Telnet, es fundamental preparar el entorno y asegurarse de que los requisitos básicos se cumplen.
Verificación de la Conectividad de Red
El primer paso, y uno de los más cruciales, es asegurar la conectividad entre los equipos que participarán en la comunicación remota. Si dos máquinas no pueden "verse" en la red, Telnet será ineficaz. Para verificar esto, se puede utilizar el comando ifconfig en la máquina Ubuntu para obtener su dirección IP.
Para saber la dirección IP en Ubuntu, se debe abrir un terminal. En caso de tener una interfaz gráfica, esto se puede hacer rápidamente con la combinación de teclas Ctrl + Alt + T. Una vez en el terminal, el nombre del equipo también es fácil de identificar al observar el "prompt".
Conocidas las direcciones IP o los nombres de equipo, se puede probar si se ven mutuamente.

Preparación de las Máquinas
Para utilizar Telnet en Linux, se necesitan al menos dos máquinas: una actuará como cliente Telnet y la otra como sistema de destino (servidor). Las opciones incluyen:
- Dos ordenadores de escritorio Linux.
- Un ordenador de escritorio y un Servidor Privado Virtual (VPS).
- Dos servidores virtuales VPS.
Se debe tener autorización para acceder a la máquina de destino y conocer su dirección IP. Es importante recordar que acceder a sistemas no autorizados es ilegal y poco ético. En escenarios donde se es propietario de ambas máquinas Linux, se pueden ejecutar comandos libremente.
Además, se requieren privilegios administrativos o sudo para instalar y configurar Telnet tanto en el cliente como en el sistema de destino. Para clientes VPS, el acceso root completo permite modificar el servidor según sea necesario.
Software de Terminal
Se necesita un software de terminal para ejecutar comandos Telnet en la máquina cliente. Las opciones incluyen:
- El terminal incorporado de Linux.
- Software de terceros como PuTTY.
- Terminales de navegador ofrecidos por algunos proveedores de hosting, que permiten ejecutar comandos directamente en el navegador.
Instalación de Telnet en Linux
La instalación de Telnet varía ligeramente dependiendo de la distribución de Linux, pero el proceso general es sencillo.
Instalación del Cliente Telnet
En la mayoría de las distribuciones basadas en Debian/Ubuntu, el cliente Telnet no viene instalado por defecto. Se puede localizar en los repositorios y instalarlo abriendo un terminal de comandos y ejecutando:
sudo apt updatesudo apt install telnetLa instalación se habrá realizado correctamente si al ejecutar el comando telnet se muestra la sesión interactiva de Telnet. Para salir de la sesión, se utiliza el comando quit.
Instalación del Servidor Telnet (Sistema de Destino)
En el sistema de destino, es necesario instalar el servidor Telnet. En distribuciones basadas en Debian, el servidor Telnet se inicia automáticamente tras la instalación.
sudo apt updatesudo apt install telnetdEs crucial abrir el puerto Telnet (23 por defecto) a través del cortafuegos del sistema de destino. Si no se está utilizando ningún cortafuegos, este paso puede omitirse.
Configuración del Servidor Telnet
Una vez instalado el servidor Telnet, se deben realizar algunas configuraciones para asegurar su correcto funcionamiento y seguridad.
Verificación de la Configuración de inetd
Este paso es necesario para verificar que la configuración de inetd (o xinetd en algunas distribuciones) está correcta para que el servidor Telnet funcione. Se debe editar el archivo de configuración de inetd, que suele encontrarse en /etc/inetd.conf.
Dentro de este archivo, se debe verificar que la línea correspondiente a Telnet no tenga el símbolo de almohadilla (#) al principio. Si lo tiene, se debe eliminar para activar el servicio.
# Telnet (multi-user login)telnet stream tcp nowait root /usr/sbin/tcpd in.telnetdTras realizar cualquier modificación, se debe guardar el archivo. Posteriormente, es probable que sea necesario reiniciar el servicio inetd para que los cambios surtan efecto.
sudo systemctl restart inetdCreación de un Usuario Dedicado para Telnet
Por motivos de seguridad, Telnet no permite el acceso root por defecto. Por lo tanto, se recomienda crear un usuario dedicado específicamente para las conexiones Telnet.
sudo adduser telnetuserSe deberá asignar una contraseña a este usuario. Este usuario será el que se utilice para iniciar sesión a través de Telnet.
Verificación del Estado del Servicio Telnet
Para confirmar que Telnet está activo y escuchando en el puerto correcto, se puede utilizar el comando netstat o ss.
sudo netstat -tulnp | grep 23o
sudo ss -tulnp | grep 23Estos comandos mostrarán que el servicio Telnet está activo y escuchando en el puerto 23.

Conexión a un Servidor Telnet
Una vez configurado el servidor, la conexión desde el cliente es sencilla.
Conexión Local
Desde la máquina cliente en la misma red, se puede establecer una conexión utilizando la dirección IP o el nombre del equipo de destino:
telnet [dirección_ip_servidor]o
telnet [nombre_equipo_servidor]Por ejemplo: telnet 192.168.2.106 o telnet profesional-virtual-machine. Tras ejecutar el comando, se solicitará el nombre de usuario y la contraseña del usuario dedicado creado previamente.
Conexión Remota (Fuera de la Red Local)
Si se desea acceder al servidor Telnet desde fuera de la red local, será necesario configurar el router para redirigir el puerto 23 hacia la dirección IP interna del servidor. Este proceso varía según el modelo del router, pero generalmente implica acceder a la interfaz de administración del router y configurar el reenvío de puertos (port forwarding).
Sintaxis y Opciones del Comando Telnet
El comando telnet en Linux ofrece varias opciones para personalizar su comportamiento.
Opciones Comunes del Comando Telnet
| Opción | Función |
|---|---|
-4 | Fuerza el uso de IPv4. |
-6 | Fuerza el uso de IPv6. |
-a | Intenta una autenticación automática basada en el nombre de usuario local. |
-b | Especifica la dirección IP local que hay que enlazar antes de establecer una conexión. |
-c | Desactiva la lectura del archivo .telnetrc del usuario. |
-d | Activa el modo de depuración para mostrar información de diagnóstico detallada. |
-e char | Establece el carácter de escape para la sesión Telnet. |
-E | Desactiva el carácter de escape, tratando toda la entrada como literal. |
-k | Envía la entidad de seguridad Kerberos especificada durante la autenticación. |
-l user | Especifica el nombre de usuario para el inicio de sesión automático. |
-n file | Registra la sesión en un archivo especificado. |
-x | Activa la encriptación de la sesión si está soportada. |
-X | Desactiva la opción TELNET STARTTLS. |
-? | Muestra el menú de ayuda de Telnet. |
-V | Muestra la versión del cliente Telnet. |
Por ejemplo, para especificar un usuario al iniciar la conexión:
telnet -l usuario servidor_remoto_ipInteracción con el Shell Remoto
Tras acceder con éxito a la máquina remota, se puede interactuar con su shell como si fuera el servidor principal, ejecutando comandos de Linux.
Casos de Uso Modernos para Telnet
Aunque Telnet ha sido en gran medida reemplazado por SSH para la administración remota, aún encuentra aplicaciones prácticas en entornos controlados.
Prueba de Puertos Abiertos
Una de las utilidades más comunes de Telnet hoy en día es verificar si un puerto específico está abierto y escuchando en un sistema remoto. Esto es útil para la depuración de problemas de conectividad o para confirmar que un servicio está funcionando correctamente.
telnet [dirección_ip_servidor] [número_puerto]Si el puerto está abierto, se recibirá una confirmación de conexión. Si está cerrado o no se está ejecutando ningún servicio, se obtendrá un mensaje como "Connection timed out" o "Connection refused".

Diagnóstico de Servicios de Red
Telnet puede utilizarse para interactuar directamente con servicios de red específicos y analizar sus respuestas.
Prueba de Servidores SMTP
Para comprobar servidores de Protocolo Simple de Transferencia de Correo (SMTP), se puede conectar al puerto 25 (o puertos alternativos como 465, 587, 2525) y enviar comandos SMTP básicos.
telnet smtp.example.com 25Se debe presentar al servidor SMTP utilizando el nombre de dominio desde el que se conecta. El servidor pedirá el cuerpo del mensaje.
Evaluación de Servidores POP3
De manera similar, Telnet es útil para comprobar servidores de Protocolo de Oficina de Correos 3 (POP3). Se puede intentar conectar al puerto 110 e interactuar con el servidor para recuperar información de correo electrónico.
Comprobación de Servidores HTTP
Se puede utilizar Telnet para enviar peticiones HTTP GET a un servidor web y analizar las cabeceras y el contenido de la respuesta.
telnet example.com 80Se teclea la petición HTTP GET para recuperar la página por defecto del servidor.
GET / HTTP/1.1Host: example.comEl servidor responderá con las cabeceras HTTP y, en la mayoría de los casos, con el contenido de la página solicitada. Para finalizar, se escribe QUIT.
Verificación de Servidores FTP
Utilizar Telnet para probar un servidor de Protocolo de Transferencia de Archivos (FTP) es una forma rápida de verificar si funciona correctamente y si el puerto 21 por defecto no está bloqueado. Se pueden enviar comandos FTP básicos manualmente para comprobar el funcionamiento del servidor.
telnet ftp.example.com 21Comandos como USER, PASS, LIST, RETR pueden ser probados.
Interacción con Servidores IRC
Internet Relay Chat (IRC) es un protocolo de comunicación de texto en tiempo real. Aunque en gran medida ha sido sustituido por plataformas de mensajería modernas, se puede conectar a un servidor IRC utilizando Telnet para comprobar su disponibilidad e interactuar con él.
telnet irc.example.com 6667Se puede utilizar el comando JOIN para entrar en un canal IRC.
Instalación de Telnet + SMTP + Configuración del Servicio en Windows Server 2019
Pruebas de Conectividad Personalizadas
En ocasiones, es necesario probar la conectividad a puertos personalizados que no corresponden a servicios estándar. Telnet permite conectarse a cualquier puerto especificado para verificar si está abierto y respondiendo.
telnet [dirección_ip_servidor] [puerto_personalizado]Dependiendo de la aplicación, el servicio responderá con datos específicos del puerto personalizado, como cabeceras, mensajes o códigos de error.
Consideraciones de Seguridad Cruciales
La principal desventaja de Telnet es su falta de seguridad. Todos los datos se transmiten en texto plano, lo que expone información sensible a posibles ataques.
Riesgos de Seguridad de Telnet
- Transmisión de Datos en Texto Plano: Nombres de usuario, contraseñas y cualquier otra información transmitida no está cifrada, lo que la hace vulnerable a la interceptación por parte de atacantes, especialmente en redes públicas o no fiables.
- Vulnerabilidades: La falta de cifrado puede ser explotada por programas maliciosos y virus.
Alternativas Seguras
Para comunicaciones seguras con servidores remotos, es altamente recomendable utilizar SSH (Secure Shell). SSH cifra toda la comunicación en tránsito, protegiendo la información de posibles ataques. El puerto predeterminado para SSH es el 22.
Otras alternativas seguras para probar protocolos o servicios encriptados, o para depuración de red, incluyen:
- OpenSSL: Una herramienta robusta para la gestión de certificados y el establecimiento de conexiones seguras.
- Netcat (nc): Una utilidad versátil para leer y escribir datos a través de conexiones de red, que puede configurarse para operaciones seguras.
Uso Responsable de Telnet
Dado su perfil de seguridad, Telnet solo debe ejecutarse en:
- Entornos controlados o locales: Para tareas básicas de depuración, como probar puertos abiertos o verificar la comunicación SMTP.
- Redes internas (LAN) protegidas: Donde el riesgo de interceptación externa es mínimo.
Es fundamental recordar que Telnet se encuentra en gran medida en desuso para la administración remota general debido a sus limitaciones de seguridad. El propósito de este artículo es instructivo y para fines de prueba en escenarios específicos y controlados.
Telnet en Otros Sistemas Operativos
Si bien este artículo se centra en Linux, Telnet está disponible o puede ser configurado en otros sistemas operativos:
- macOS: Telnet está disponible en macOS y se puede acceder a través de la aplicación Terminal. Para verificar si un puerto está abierto, se puede usar la Utilidad de Red.
- Windows: Excepto Windows 10 (donde el cliente Telnet no está habilitado por defecto y requiere una instalación manual), otros sistemas operativos como Windows Server y Windows 7 disponen de herramientas para la creación de servidores Telnet.
Conclusión: Telnet, una Herramienta con Matices
Telnet sigue siendo una herramienta útil para la solución de problemas de red y la prueba de servicios en un entorno Linux controlado o local. Permite verificar la apertura de puertos, interactuar con diversos protocolos de red y realizar diagnósticos rápidos. Sin embargo, su falta de cifrado impone una responsabilidad significativa en su uso. Siempre se debe priorizar la seguridad, optando por SSH para conexiones remotas y la administración de sistemas sensibles. Al reconocer los puntos fuertes y los riesgos inherentes a Telnet, se puede utilizar eficazmente para situaciones concretas, garantizando al mismo tiempo la protección de datos e información crítica mediante alternativas más seguras.
Es vital asegurarse de tener la autorización necesaria antes de utilizar Telnet para acceder a servidores o servicios remotos, y comprender que su uso para acceder a sistemas no autorizados es ilegal y poco ético.