Comprobador MTA-STS gratuito

Lee el registro MTA-STS que publica un dominio, pega después el archivo de política al que apunta y mira lo que hace de verdad: si se aplica o solo está en pruebas, cuánto tiempo lo guardan en caché los remitentes y si cubre todos los servidores de correo que el dominio usa realmente. Funciona gratis en tu navegador, sin registro y sin guardar nada.

Detecta los problemas antes de que te cuesten caro.

Crea una cuenta gratuita de Unspam para guardar tus resultados y repetir estas comprobaciones cuando quieras, así detectas una configuración rota antes de que te cueste caro. Sin tarjeta de crédito.

¿Qué es MTA-STS?

MTA-STS es la forma que tiene un dominio de decirle al resto de internet que el correo que llega para él tiene que ir cifrado y entregarse a un servidor cuyo certificado coincida. Sin él, el cifrado de SMTP es oportunista: el remitente ofrece STARTTLS y, si algo sale mal, un certificado caducado, una capacidad retirada por el camino, un atacante situado en la ruta, se cae a texto plano en lugar de no entregar. Esa caída es todo el problema, porque significa que el cifrado lo puede apagar cualquiera capaz de interferir en la conexión. MTA-STS lo cierra nombrando qué servidores pueden recibir el correo del dominio y pidiendo a los remitentes que rechacen todo lo demás. Son dos piezas a propósito: un registro DNS corto en _mta-sts que dice que existe una política y lleva un id de versión, y la política en sí, un archivo de texto servido por HTTPS desde mta-sts.example.com detrás de un certificado que tiene que validar. La mitad de DNS es la parte que un atacante puede manipular, y es la parte que no lleva nada que merezca la pena manipular. La mitad de la política es la parte que decide algo, y se descarga por un canal que demuestra quién la sirvió.

Cómo interpretar tu resultado

  • v=STSv1; id=

    La mitad de DNS, y ambas etiquetas son obligatorias. La versión tiene que escribirse exactamente así, con esas mayúsculas, y un remitente que no la encuentre trata al dominio como si no tuviera política en lugar de intentar reparar el registro. El id es como un remitente se entera de que la política cambió: lo compara con el que tiene en caché, así que editar el archivo sin cambiar el id deja a todo el mundo con la política antigua hasta que caduque.

  • mode:

    La única línea que decide si MTA-STS hace algo. Enforce significa que un remitente se niega a entregar por una conexión que no puede autenticar. Testing significa que informa del fallo y entrega igualmente, lo que en resultado es idéntico a no tener ninguna política. None significa que el dominio se retira, que es una configuración real y la forma documentada de jubilar un despliegue.

  • max_age:

    Cuántos segundos puede un remitente guardar la política en caché, y la especificación espera un valor de semanas, no de horas. Una duración larga es la propiedad de seguridad: una vez que un remitente tiene la política, un atacante que bloquee todas las descargas futuras sigue sin poder degradar al dominio. Una corta le regala una oportunidad nueva cada día.

  • mx:

    Una línea por cada servidor de correo que cubre la política, y la lista es exhaustiva: en modo enforce, un remitente se niega a entregar a cualquier host que la lista no cubra. Un comodín puede sustituir la etiqueta más a la izquierda entera y nada más, así que *.example.com cubre mx1.example.com y no cubre ni example.com ni a.b.example.com.

Problemas habituales y cómo solucionarlos

Quedarse en modo de pruebas

Testing se diseñó como primer paso y se ha convertido en lugar de descanso. Una política en modo de pruebas entrega exactamente el correo que entregaría una política ausente, así que no protege nada, y el dominio parece configurado ante quien solo mire el DNS. Conviene saber que buena parte de los dominios que hoy publican MTA-STS están en pruebas, y por eso este comprobador nunca da un resultado correcto hasta que se ha leído la política.

Publicar una mitad sin la otra

Un registro DNS sin archivo de política detrás no protege nada, porque los remitentes lo descargan y no encuentran nada que aplicar. Un archivo de política sin registro DNS no se descarga nunca, porque nada le dice a un remitente que mire. Las dos mitades tienen que estar activas, y el archivo se sirve por HTTPS con un certificado que valide para mta-sts.example.com.

El id no cambia nunca

Los remitentes deciden si vuelven a descargar comparando el id del DNS con el que tienen en caché. Editar la política dejando el id igual hace que todo remitente que ya tenga una copia siga aplicando la antigua hasta que se agote el max_age, lo que con una duración correctamente larga pueden ser semanas.

Un servidor MX que la política no lista

Este es el fallo que detiene el correo, no el que simplemente deja de protegerlo. Añadir un servidor de correo, cambiar de proveedor o mantener un MX de respaldo que nunca llegó a la política significa que los remitentes en modo enforce se niegan a entregarle. Contrastar las líneas mx con los registros MX que el dominio publica ahora mismo es lo más útil que se puede comprobar, y es lo que hace esta herramienta con la política que pegas.

Un comodín que no es la etiqueta más a la izquierda

mx.*.example.com y *example.com no son válidos, y *.example.com no cubre example.com. La regla es estrecha a propósito, y un patrón escrito como lo escribiría un shell deja sin cubrir justo los hosts que pretendía cubrir.

No publicar TLS-RPT al lado

MTA-STS dice a los remitentes que rechacen una conexión que no pueden autenticar. No te dice cuándo pasó. Sin un registro de informes, un certificado que caduca un viernes produce silencio en lugar de un aviso, y la primera señal es alguien diciendo que su correo rebotó.

Tus dudas, resueltas.

¿Por qué tengo que pegar yo el archivo de política?
Porque una página web no puede descargarlo. Los servidores de políticas sirven el archivo a servidores de correo, no a navegadores, así que no envían la cabecera de origen cruzado que una página necesitaría, y cualquier intento de leerlo desde aquí fallaría con cualquier dominio. El archivo sigue siendo texto plano en una dirección fija que puedes abrir en una pestaña, así que la herramienta comprueba la mitad de DNS automáticamente y te pide que traigas la otra mitad. Pegarlo es lo que hace posible el resto: el modo, la duración y la comprobación de cobertura viven en ese archivo.
¿MTA-STS protege el correo que envío?
No. La política de un dominio rige el correo que llega para él, así que publicar una protege tu correo entrante frente a un ataque de degradación. Que el correo que envías esté protegido depende de que el dominio del destinatario publique una política y de que tu plataforma de envío la respete. Merece la pena hacer las dos cosas, y son trabajos distintos.
¿Necesito un certificado para mta-sts.example.com?
Sí, y tiene que validar para ese nombre exacto. Un remitente que descargue la política no seguirá una redirección, no aceptará una respuesta que no sea 200 y no continuará ante un certificado que no pueda verificar, porque el certificado es lo único que hace fiable a la política. Basta con un certificado gratuito de cualquier autoridad pública.
¿Es arriesgado el modo enforce?
Es el modo que puede detener correo, así que conviene entrar en él a conciencia. El riesgo no es que falle el cifrado, es que la lista mx esté incompleta o que caduque sin que nadie lo note un certificado de un servidor de correo. Publica primero un registro de informes, quédate un par de semanas en pruebas, lee lo que llega y pasa a enforce cuando los informes no muestren ningún fallo.
¿Se guarda algo?
No. Las consultas DNS salen de tu navegador y el texto de la política que pegas no sale de la página. Para ver si el cifrado funciona en la práctica, comprueba el registro de informes con el comprobador TLS-RPT gratuito.

Un registro correcto es solo el primer paso. Descubre dónde llega de verdad tu correo.