¿Qué es la autenticación SMTP? Protege tus correos contra spam

Aproximadamente el 67% de los correos electrónicos que se envían en todo el mundo son spam. Difícil de creer, pero cierto, según un estudio de Internet Live Stats. Otros estudios, como el de Kaspersky Lab, se mueven en niveles similares: un 58%, según la conocida empresa de antivirus. Las cifras han aumentado durante los últimos años en unos 3 puntos porcentuales. La mayor parte procede de ordenadores y servidores infectados con programas maliciosos que rápidamente acaban en las listas negras de los grandes proveedores como distribuidores de spam. La autenticación SMTP proporciona el mínimo de seguridad necesario para evitar que esto ocurra.

¿Qué es la autenticación SMTP?

La autenticación SMTP, a menudo abreviada como ASMTP, es una extensión de SMTP (ESMTP), que a su vez es una extensión del protocolo de red SMTP. Este protocolo permite a un cliente SMTP (un remitente de correo electrónico) iniciar sesión en un servidor SMTP (un proveedor de correo electrónico) a través de un mecanismo de autenticación. De esta manera, solo los usuarios de confianza pueden mandar los mensajes de correo electrónico a través del servidor y reenviarlos a la red. Además, los datos de registro se pueden utilizar para determinar quién utilizó el servidor como retransmisor de correo.

¿Por qué existe la autenticación SMTP?

El propósito de la autenticación SMTP es evitar que un servidor SMTP se utilice de forma maliciosa como un “Open Mail-Relay” para distribuir spam en la red. La necesidad de realizar esta autenticación se debe a algunas de las características inherentes al SMTP original de 1982, que no preveía la autenticación de usuario por defecto. Por esta razón, las retransmisiones de correo abierto eran la norma hasta aproximadamente 1997: servidores de correo que reenvían los emails, independientemente de la dirección del remitente o del destinatario. Lo que parece absurdo desde el punto de vista actual tenía sus motivos en aquel entonces: los errores del sistema y los fallos del servidor eran más comunes, por lo que los relés de correo abiertos debían mantener el tráfico en caso de emergencia.

Sin embargo, el uso generalizado de estos relés desprotegidos generó el problema del spam. Tanto anunciantes moralmente cuestionables como criminales maliciosos (especialmente el “rey del spam” Sanford “Spamford” Wallace con su compañía Cyberpromo) utilizaban los servidores abiertos con direcciones de correo electrónico robadas o inventadas para distribuir spam. Esta práctica se llama “mail-spoofing”.

Como los servidores no tenían ningún mecanismo de autenticación adicional en ese momento, aceptaban todos los mensajes de spam sin realizar ningún filtro. Mediante el uso de hardware externo, los spammers también ahorraban recursos y no podían ser rastreados. Además, el cambio constante de direcciones falsas permitía evitar los filtros de spam. Con el tiempo, se fueron desarrollando varias herramientas y estrategias para resolver el problema de los relés de correo abierto: primero SMTP-After-POP, luego ESMTP y ASMTP en 1995. Entre el 2005y el 2006, el número de repetidores de correo abierto se había reducido de varios cientos de miles a una pequeña fracción.

Aunque la situación actual ya no es tan crítica como entonces, los spammers siguen encontrando de 10 a 20 nuevos servidores abiertos al día en la red según la organización internacional sin ánimo de lucro Spamhaus. A veces, son el resultado de la imprudencia de los administradores sin experiencia que abren temporalmente su servidor para realizar diferentes pruebas. Según Spamhaus, sin embargo, el problema radica normalmente en cortafuegos mal configurados y en aplicaciones de seguridad externas. En el caso de pequeñas empresas regionales puede ser que el problema se deba a la configuración del servidor en sí. Si una aplicación deja pasar correo no deseado, se reenvía a través de una conexión SMTP local con la dirección IP de la aplicación correspondiente al servidor, que la trata como fiable. Además, cada vez más spammer bots utilizan ordenadores domésticos “zombificados” como relays.

Ahora, la mayor parte de los relays de correo abierto instrumentalizados para crear spam suelen identificarse como tales al cabo de unos pocos días o incluso horas y, por tanto, acaban rápidamente en las denominadas listas negras. En consecuencia, muchos correos electrónicos legítimos terminan en el filtro de spam del destinatario, de modo que el operador de un servidor de correo primero tiene que encargarse de cerrar el agujero de seguridad y luego intentar eliminarlos de la lista para poder operar otra vez con normalidad. Las empresas no solo generan mucho tráfico a expensas de la velocidad de su hardware a través de los spammers, sino que su reputación y el tiempo adicional que dedican también cuestan dinero.

Por esta razón, casi todos los servidores de correo utilizan, hoy en día, ESMTP en conexión con ASMTP, y siempre requieren autenticación antes de utilizar su servicio de correo electrónico. Una retransmisión SMTP configurada de forma óptima (también llamada “smart host”) es un servidor que solo reenvía correos electrónicos de remitentes a terceros si es responsable de ambas partes. En lenguaje sencillo: los correos entrantes solo van a los usuarios registrados y los salientes a aquellos que estén autorizados a utilizar el servidor de correo.

¿Cómo funciona el ASMTP?

Una característica esencial de ASMTP es que los correos electrónicos se aceptan a través del puerto 587/TCP en lugar del puerto 25/TCP tradicional, que es la base obligatoria para ESMTP. El protocolo contiene básicamente una selección de mecanismos de autenticación con diferentes niveles de seguridad que un servidor SMTP puede utilizar, dependiendo de su configuración, para verificar la fiabilidad de un cliente SMTP.

Estos incluyen, pero no se limitan a:

  • PLAIN: una autenticación en la que se valida el nombre de usuario y la contraseña del cliente. Ambos se transmiten sin cifrar y codificados en Base64.
  • LOGIN: funciona como PLAIN, pero los códigos Base64 para el nombre de usuario y la contraseña se transmiten en dos pasos en lugar de uno.
  • CRAM-MD5: una alternativa a PLAIN y LOGIN con un mayor grado de seguridad según el principio de problema-respuesta. Dado que los spammers pueden decodificar los datos de acceso personal de un usuario relativamente rápido desde el código Base64, este mecanismo no transfiere la contraseña al servidor en texto plano o en código. En su lugar, el servidor presenta al cliente una especie de problema aritmético que sólo puede resolverse utilizando la contraseña. Esta tarea cambia con cada inicio de sesión, por lo que los spammers no pueden hacer un uso indebido de los datos de conexiones de servidores anteriores.
  • Otros mecanismos para realizar la autentación SMTP incluyen GSSAPI, DIGEST-MD5, MD5, OAUTH10A, OAUTHEBEARER, SCRAM-SHA-1 y NTLM.

Un ejemplo de autenticación vía LOGIN:

Parte Comandos ESMTP y códigos de estado Explicación
Servidor: 220 smtp.server.com ESMTP Postfix Una vez establecida la conexión, el servidor SMTP responde.
Cliente: EHLO relay.client.com El cliente SMTP inicia sesión con su nombre de host y consulta el soporte ESMTP del servidor a través del comando “EHLO”.
Servidor: 250-smtp.server.com Buenos dias250 AUTH CRAM-MD5 LOGIN PLAIN El servidor confirma el log y con ello que soporta ESMTP (si no lo hiciera, la retrocompatibilidad con SMTP permite continuar con “HELO”). El servidor ofrece entonces al cliente una selección de mecanismos de autenticación.
Cliente: AUTH LOGIN El cliente selecciona el mecanismo de autenticación LOGIN.
Servidor: 334 VXNlcm5hbWU6 El servidor solicita el nombre de usuario del remitente con el código Base64 para “Nombre de usuario”.
Cliente: TWF4IE11c3Rlcm1hbm4= El cliente responde en código Base64 con sus credenciales de usuario.
Servidor: 334 UGFzc3dvcmQ6 El servidor pide a través del código Base64 la contraseña del remitente.
Cliente: SWNoYmlua2VpblNwYW1tZXI= El cliente responde con el código Base64 para la contraseña. En este ejemplo es “No soy un spammer”.
Servidor: 235 OK El servidor confirma la autenticación. Se inicia la transmisión del correo electrónico según SMTP.

¿Cómo configuro la autenticación SMTP?

En algunos clientes de correo (como Mozilla Thunderbird), la autenticación SMTP se configura automáticamente cuando se crea una nueva cuenta. Si esto no ocurre, tendrás que hacerlo de forma manual.

En el caso de Thunderbird, procede de la siguiente manera:

  1. Abre el menú contextual haciendo clic con el botón derecho del ratón en tu cuenta de correo electrónico y haz clic en “Configuración”.
  2. Selecciona tu servidor de correo en la opción del menú “Servidor de correo saliente (SMTP)” y haz clic en “Editar”.
  3. Activa la opción “Utilizar nombre de usuario y contraseña” e introduce tu dirección de correo electrónico.
  4. Confirma los ajustes con “OK”.

Te mostramos también cómo realizar la autenticación SMTP manual en Outlook:

  1. Haz clic en “Configuración de la cuenta” en el menú Archivo.
  2. Selecciona tu cuenta y haz clic en “Cambiar”.
  3. Haz clic en “Otros ajustes” en la ventana que se abre.
  4. Dirígete a la pestaña “Servidor de correo saliente” y activa la opción “Servidor de correo saliente (SMTP) requiere autenticación”.
  5. Marca la opción “Utilizar los mismos ajustes que para el servidor de correo entrante”.
  6. Confirma con “OK”. La ventana se cerrará de nuevo.
  7. Haz clic en “Siguiente”. Outlook ahora comprobará la configuración de la nueva cuenta. Una vez finalizada la prueba, haz clic en “Cerrar”.
  8. Haz clic en “Finalizar” y luego en “Cerrar”.

Para proteger tu privacidad, el vídeo se cargará tras hacer clic.

¿Cómo comprobar que la autenticación SMTP funciona correctamente?

Puedes utilizar el cliente Telnet para comprobar si se utiliza un servidor de correo como retransmisión abierta o si la autenticación SMTP funciona correctamente (por ejemplo, si has configurado tu propio servidor de correo). Algunos spammers lo utilizan para localizar manualmente los retransmisores de correo abiertos. SMTP y ESMTP son protocolos basados exclusivamente en texto, por lo que también puedes iniciar y ejecutar una sesión cliente-servidor manualmente. Todo lo que necesitas es tu nombre de usuario y contraseña en el código Base64, que puedes obtener de páginas web como base64encode.net.

Consejo

El cliente Telnet está disponible en todos los sistemas operativos comunes y puede llamarse por defecto mediante el término “telnet”. En las versiones de Windows a partir de Vista, el cliente debe instalarse o activarse primero en el panel de control.

La prueba para comprobar la autenticación SMTP se ejecuta de la siguiente manera:

  1. Intenta conectarte al servidor SMTP a través del puerto 25/TCP con el comando “telnet smtp.ejemplo.com 25” (sustituye “smtp.ejemplo.com” por el dominio de tu servidor de correo).
  2. El servidor debe responder con el código de estado “220 smtp.ejemplo.com ESMTP Postfix” e iniciar la sesión.
  3. Saluda al servidor con “EHLO smtp.ejemplo.com”.
  4. El servidor proporcionará una selección de mecanismos de autenticación como se muestra en el ejemplo anterior. Por ejemplo, puedes seleccionar LOGIN con el comando “AUTH LOGIN”.
  5. Ahora hay que realizar la prueba en sí: después de los comandos “MAIL FROM” y “RCPT TO”, introduce una dirección de remitente y destinatario imaginaria e inexistente. Si el servidor responde con un mensaje de error, significa que ASMTP está configurado correctamente y tu servidor no es un “Open Mail Relay”. Si, en cambio, confirma ambos comandos con “250 OK”, es necesario volver a configurar la autenticación.

Para proteger tu privacidad, el vídeo se cargará tras hacer clic.

De forma alternativa, puedes comprobar si la autenticación SMTP funciona con herramientas externas como MxToolbox, Inc.. También ofrece una selección de listas negras, que puedes verificar en caso de sospecha.


¡No te vayas! ¡Tenemos algo para ti!
Consigue tu dominio .es un año gratis.

Introduce el dominio que deseas en la barra de búsqueda para comprobar su disponibilidad.
12 meses desde 0€/año IVA incl.
después 10 €/año IVA incl.