Usar registros SPF en tu servidor para evitar ser catalogado como SPAM
Uf!… ese fue el título más específico que se me ocurrió… porque literalmente es eso. Acá les voy a plantear cual fue mi situación:
En GEEKBOX estuvimos haciendo las primeras pruebas de registro para el juego Brooks Brothers Mundial, y parte de este proceso correspondía a enviar correos a los usuarios que se registraban para poder validar sus cuentas. Estos correos se autogeneraban vía PHP y se enviaban con la típica funcion mail().
Resulta que extrañamente los correos dirigidos a cuentas de hotmail no llegaban (ni siquiera al spam), pues el sistema interno de hotmail los bloqueaba al ser generados por programación. La duda que le da a este servicio de correo (por la cual no quería aceptar los correos) era que éstos se enviaban desde una dirección IP xxx.xxx.xxx.xxx (la de los servidores del servicio de alojamiento), pero no era necesariamente la misma IP que la que utiliza el sitio en cuestión (que tiene una de las tantas direcciones IP de los servidores). Esto quiere decir que estos correos le producían “desconfianza” porque no sabía con certeza si eran enviados por terceros utilizando una dirección falsa o si eran enviados REALMENTE por el sitio. Asique, “ante la duda abstente” y ellos lo rechazan.
En resumidas cuentas no llegaban los correos y necesitaba una solución.
La solución!
Buscando y buscando logré entender como se tiene que hacer para que esto no ocurra: el concepto principal es asociarle a nuestro servidor un dato que defina cuales son las direcciones IP válidas para enviar correos “autorizados” por el sitio. Este “dato” es un “registro” (como los típicos registros A o CNAME) del tipo TXT que define los valores (IPs) para que los sistemas de correo (como Hotmail) puedan consultarle. Este “dato” es el llamado registro SPF o SPF record (Sender Policy Framework).
En resumidas cuentas, si Hotmail ve que le están enviando un correo desde la IP xxx.xxx.xxx.xxx diciendo que viene desde tusitio.com, se conectará tusitio.com y consultará si dentro de sus registros del tipo TXT hay alguno que tenga la información de los SPF. Si la encuntra, consultará cuales son las direcciones IP autorizadas desde las cuales el sitio enviará correos. Si todo está en orden (la IP desde donde se envía el correo calza con la autorizada por el servidor) recibirá el correo sin problemas; si no, lo rechazará y probablemente asumirá como que el correo nunca existió.
Un ejemplo de registro TXT que contiene esta información es el siguiente (para Dreamhost):
v=spf1 ip4:64.111.100.0/24 ip4:66.33.201.0/24 ip4:66.33.216.0/24 ip4:208.97.132.0/24 ip4:208.97.187.0/24 ip4:208.113.200.0/24 ip4:208.113.244.0/24 ip4:208.113.175.0/24 mx -all
Este dato se le asocia al servidor y listo. Luego de un rato todo debería funcionar normalmente.
Hay que tener en consideración que los SPF son independientes para cada subdominio. Es decir, que si los aplicas en tudominio.com, no van a ser considerados para tusubdominio.tudominio.com. Hotmail no los considera el mismo sitio (pues no lo son).
Para saber si tu servidor tiene asociado algún registro SPF puedes visitar este sitio de microsoft donde revisa los registros A, MX y SPF de tu servidor. Si encuentra algún SPF te lo muestra, sino, te muestra los registros MX para que puedas crear (con su wizard) los registros que necesitas.



Hola, quiero enviar correos a varias cuentas de mis clientes pero no logro encontrar la forma para evitar que gmail los considere SPAM
Puedes recomendarme un hosting para enviar muchos emails diarios.
Mi base de datos tiene 20000 clientes y necesito enviarles informacion todas las semanas.
gracias por tu tiempo, saludos,Ariel.