Como no se puede leer el correo si no hay gente que lo escribe, hoy vamos a ver cómo se mandan e-mails con el telnet. Para ello conectaremos con nuestro servidor de acceso a internet en el puerto 25 (SMTP - Simple Mail Transfer Protocol):
TELNET smtp.nombre-de-nuestro-servidor-de-correo.es 25
El servidor nos contestará con una línea que empieza por 220 y contiene normalmente el nombre del programa de correo que utiliza y su versión (apuntad esto) del estilo:
220 Welcome to our SMTP server (nombre del programa + version) at (hora de conexion)
Lo primero que haremos será pedir ayuda y ver los comandos que tiene habilitados nuestro servidor mediante el comando HELP, a lo que el servidor responderá con una lista de comandos disponibles. Para ver para qué sirve cada uno y cómo se utilizan, basta con poner HELP nombre-del-comando.
Una vez familiarizados con el entorno y sus posibilidades, vamos a mandarle un mail a un amigo nuestro que también se conecte con nuestro proveedor de acceso a internet. Como no hay que perder los buenos modales, lo primero será identificarnos mediante:
HELLO nuestro-nombre
A lo que el servidor contestará con algo parecido a:
250 Hello nuestro-nombre [xxx.xxx.xxx.xxx], pleased to meet you (Donde xxx.xxx.xxx.xxx es nuestra IP)
Una vez que el programa sabe quienes somos, normalmente no se necesita autentificarse mediante login/password, por lo que directamente vamos a escribir el mail.
Vamos a comprobar que la dirección que nuestro amigo nos dio es correcta mediante los comandos:
VRFY e-mail-de-nuestro-amigo El comando que recibimos de nuestro servidor nos indica que esa dirección realmente existe, por lo que vamos a mandarle un e-mail a nuestro amigo para saludarle. Primero escribamos el remitente:
MAIL FROM:"nuestro-e-mail"
250 "nuestro-email"... Sender ok
A continuación escribimos el destinatario:
RCPT TO:"e-mail-de-nuestro-amigo"
250 "e-mail-de-nuestro-amigo"... Recipient ok
y por último el cuerpo del mensaje:
DATA
354 Enter mail, end with "." on a line by itself
Por lo que escribimos todo lo que tengamos que escribir y la ultima línea la dejamos con un único punto.
250 Message accepted for delivery
Y ya esta, dentro de unos instantes llegará al buzón de nuestro amigo el e-mail que acabamos de escribir. Hasta aquí todo muy bonito y muy claro, pero se nos vuelve a plantear la eterna pregunta: "¿para qué gastar esfuerzos utilizando el telnet cuando todo esto ya lo hace mi programa de gestion de correo de una forma gráfica y mucho más eficiente?" De nuevo tenéis razón,pero...
Pregunta 1: ¿Y si no contamos con ninguno de estos programas bien porque no podemos instalarlos o bien porque nos llevaría mucho más tiempo instalarlos y aprender a utilizarlos que simplemente hacer un telnet a nuestro servidor de correo?
Respuesta 1: A tirar de telnet.
Pregunta 2: ¿Y si queremos saber si alguno de los nombres de usuario es válido y tiene una cuenta de correo en algún ordenador?
Respuesta 2: Nos conectamos por telnet a dicho ordenador por el puerto 25 y comprobamos con el comando VRFY que existe dicha cuenta (¿O acaso os creiais que lo de escribir un e-mail a un "amigo" que utilice nuestro mismo proveedor de acceso a internet era pura casualidad?).
Pregunta 3: ¿Y si queremos mandar un e-mail "pseudo-anónimo" (y digo pseudo-anónimo porque la absoluta anonimicidad en los e-mails no existe, ya que siempre queda grabada la IP del remitente) a alguien?
Respuesta 3: Nos conectamos a un ordenador que ofrezca la capacidad de enviar correos pseudo-anónimos (o mejor dicho, que esté mal configurado y permita esta opción) utilizando telnet al puerto 25 y a la hora de utiliar los comandos HELLO y MAIL FROM:"direccion-de-e-mail" ponemos en el primero un nombre de dominio falso y en el segundo un e-mail falso para que parezca que el mail proviene de donde nosotros queramos que provenga. Un consejo: probad primero a mandaros un a-mail a vosotros mismos cuando uséis este tipo de pseudo-anonimato porque muchas veces veréis que no es oro todo lo que reluce...
Pregunta 4: ¿Y si queremos saber el programa que utiliza cierto ordenador para gestionar el envío de mails y su versión para así poder saber el sistema operativo que utiliza y poder utilizar estos datos para buscar vulnerabilidades tanto en el sistema operativo como en el propio programa de correo?
Respuesta 4: La linea que empieza por 220 (la primera que nos manda el servidor nada más establecerse la conexión) tiene todas las respuestas.
Espero que ya os vayáis manejando mejor con el telnet y os deis cuenta de que es el pan de cada día en esto de la seguridad informática. Por cierto, no me gustaría que abusáseis del correo pseudo-anónimo para mandar SPAM, porque ahí fuera hay gente que con un par de pings, un traceroute y un whois puede dar con vosotros...Lo dicho, sed buenos.