¿Cómo se asegura de que el correo electrónico que envía mediante programación no esté marcado automáticamente como spam?

435

Esto es complicado y siempre me he basado en técnicas, como correos electrónicos basados ​​en permisos (es decir, solo enviar a personas a las que tiene permiso para enviar) y no usar terminología descaradamente spam .

Últimamente, algunos de los correos electrónicos que envío programáticamente han sido enviados a la carpeta de spam de las personas automáticamente y me pregunto qué puedo hacer al respecto.

Esto a pesar del hecho de que estos correos electrónicos particulares no son los que los humanos marcarían como spam, específicamente, son correos electrónicos que contienen claves de licencia por las que las personas han pagado un buen dinero, por lo que no creo que los consideren spam

Me imagino que este es un gran tema en el que soy esencialmente un tonto ignorante.

Leon Bambrick
fuente

Respuestas:

338

Utilice métodos de autenticación de correo electrónico, como SPF y DKIM para demostrar que sus correos electrónicos y su nombre de dominio pertenecen juntos, y para evitar la suplantación de identidad de su nombre de dominio. El sitio web de SPF incluye un asistente para generar la información de DNS para su sitio.

Verifique su DNS inverso para asegurarse de que la dirección IP de su servidor de correo apunte al nombre de dominio que utiliza para enviar correo.

Asegúrese de que la dirección IP que está utilizando no esté en una lista negra

Asegúrese de que la dirección de respuesta sea una dirección válida y existente.

Utilice el nombre completo y real del destinatario en el campo Para, no solo la dirección de correo electrónico (p "John Smith" <[email protected]>. Ej .).

Controle sus cuentas de abuso, como [email protected] y [email protected]. Eso significa: asegúrese de que existan estas cuentas, lea lo que se les envía y actúe sobre las quejas.

Finalmente, haga que sea muy fácil darse de baja. De lo contrario, sus usuarios se darán de baja presionando el botón de spam y eso afectará su reputación.

Dicho esto, hacer que Hotmail acepte tus correos electrónicos sigue siendo un arte negro.

Michiel de Mare
fuente
¿Podría dar más detalles sobre las cuentas de abuso? No estoy seguro de lo que quiere decir
marcgg
26
brandonchecketts.com/emailtest.php puede probar si la configuración de su servidor de correo cumple con DomainKeys, DKIM, SPF y otros métodos anti-spam.
Jonas
3
también, cree un algoritmo de detección de correos electrónicos rebotados para verificar direcciones de correo electrónico incorrectas (por ejemplo, si un correo se recupera 3 veces, deje de enviar correos a esa dirección)
clyfe
11
+1 para "Dicho esto, hacer que Hotmail acepte tus correos electrónicos sigue siendo un arte negro". Hotmail hace poca o ninguna distinción entre spam y no spam. O bien todo está en la bandeja de entrada o en el contenedor de correo no deseado (según su configuración).
Halil Özgür
2
Brandon Checketts trasladó su herramienta de conformidad del servidor de correo a: dkimvalidator.com
Dana Wheeler
30

Regístrese para obtener una cuenta en la mayor cantidad posible de proveedores de correo electrónico (gmail / yahoo / hotmail / aol / etc.). Si realiza cambios en sus correos electrónicos, ya sea una nueva redacción, cambios en el código que envía los correos electrónicos, cambios en sus servidores de correo electrónico, etc., asegúrese de enviar mensajes de prueba a todas sus cuentas y verifique que no se marquen como spam.

thelsdj
fuente
2
Algunos sistemas de spam tienen en cuenta los hábitos de lectura individuales. (¿Los correos electrónicos de este remitente se leen o se eliminan sin leer? Etc.) Así que esto definitivamente lo ayudará a encontrar cuándo se están marcando (verdadero negativo), pero este paso no probará que no lo harán para otros usuarios en el mismo sistema (falso positivo).
Jon Adams
26

Puede decirles a sus usuarios que agreguen su dirección De a sus contactos cuando completen su pedido, lo que, si lo hacen, será de gran ayuda.

De lo contrario, trataría de obtener un registro de algunos de sus usuarios. A veces tienen detalles sobre por qué se marcó como spam en los encabezados del mensaje, que puede usar para modificar el texto.

Otras cosas que puedes probar:

  • Ponga el nombre o la dirección de su sitio en el asunto
  • Mantenga todos los enlaces en el mensaje que apuntan a su dominio (y no a email.com)
  • Ponga una dirección u otra información de contacto en el correo electrónico
Daniel Broekman
fuente
24

Algunos puntos de una respuesta anterior :

  • Lo más importante: ¿La dirección del remitente ("De") pertenece a un dominio que se ejecuta en el servidor desde el que envía el correo electrónico? Si no, hazlo así. Nunca use direcciones de remitente como [email protected]. Usuario reply-tosi necesita respuestas para llegar a una dirección diferente.

  • ¿Está su servidor en una lista negra (por ejemplo, verifique la IP en spamhaus.org)? Esta es una posibilidad cuando estás en un alojamiento compartido cuando los vecinos se comportan mal.

  • ¿Los correos son filtrados por un filtro de spam? Abra una cuenta con un freemailer que tenga una carpeta de spam y descúbralo. Además, intente enviar correo a una dirección sin ningún tipo de filtro de spam.

  • ¿Posiblemente necesita el quinto parámetro "-f" de mail () para agregar una dirección de remitente? (Vea el comando mail () en el manual de PHP)

  • Si tiene acceso a los archivos de registro, verifíquelos, por supuesto.

  • ¿Comprueba la dirección "de:" para ver posibles correos de devolución ("Devuelto al remitente")? También puede configurar una dirección separada de "errores a".
Pekka
fuente
22

Confirme que tiene la dirección de correo electrónico correcta antes de enviar correos electrónicos. Si alguien da la dirección de correo electrónico incorrecta en el registro, golpéelo rápidamente lo antes posible.

Incluya siempre información clara sobre "cómo cancelar la suscripción" en CADA correo electrónico. No requiera que el usuario inicie sesión para darse de baja, debe ser una url única para darse de baja con 1 clic.

Esto evitará que las personas marquen sus correos como spam porque "darse de baja" es demasiado difícil.

engtech
fuente
11
+1 para url única para darse de baja con 1 clic. Odio iniciar sesión para cancelar la suscripción. Los marqué como SPAM!
Shyju
16

Además de todas las otras respuestas, si está enviando correos electrónicos HTML que contienen URL como texto de enlace, asegúrese de que la URL coincida con el texto de enlace. Sé que Thunderbird los marca automáticamente como una estafa si no es así.

La forma incorrecta:

Go to your account now: <a href="http://www.paypal.com.phishers-anonymous.org/">http://www.paypal.com</a>

La direccion correcta:

Go to your account now: <a href="http://www.yourdomain.org/">http://www.yourdomain.org</a>

O use un texto de enlace no relacionado en lugar de una URL:

<a href="http://www.yourdomain.org/">Click here to go to your account</a>
Miguel
fuente
1
Hola Mike, tengo dos dominios, es decir, dominio1.com y dominio2.com. Su código funciona para domain1.com pero no funciona para domain2.com. No se por que No he cambiado de opinión. stackoverflow.com/questions/42200904/…
Naren Verma
1
@NarendraVerma No parece que mi respuesta se aplique a usted en este caso. Recomiendo mirar las otras respuestas aquí para ver si algo más funciona para usted. Al final, depende del proveedor de correo electrónico decidir qué consideran spam y qué dejan pasar, y cada uno tiene varios factores diferentes que consideran. En realidad, Gmail le brinda una breve descripción de por qué los mensajes se marcan como spam si hace clic en el mensaje de spam.
Mike
1
Gracias por responder a Mr.Mike, en realidad apliqué tu respuesta en domain1 y eso está funcionando. Estoy usando PHpMailer y agregué como $ email_body = "<a href=' domain1.com'> Ver </ a >". Esto está funcionando perfectamente.
Naren Verma
1
No sé por qué el segundo dominio2 no funciona. Claro, me pondré en contacto con el equipo de Gmail. ¿Alguna sugerencia más en este código?
Naren Verma
@NarendraVerma No hay nada malo con su código.
Mike
15

Puede considerar un servicio de correo electrónico de terceros que maneja problemas de entrega:

  • Objetivo exacto
  • Respuesta vertical
  • Contacto constante
  • Monitor de campaña
  • Emma
  • Vía de retorno
  • IntelliContact
  • SilverPop
Zack Peterson
fuente
15

Entregar correos electrónicos puede ser como magia negra a veces. El DNS inverso es realmente importante.

He encontrado que es muy útil rastrear cuidadosamente los NDR. Dirijo todos mis NDR a una sola dirección y tengo un servicio de Windows analizándolos (Google ListNanny). Pongo tanta información del NDR como puedo en una base de datos, y luego ejecuto informes para ver si de repente comencé a ser bloqueado por cierto dominio. Además, debe evitar enviar correos electrónicos a direcciones que anteriormente estaban marcadas como NDR, porque generalmente es una buena indicación de spam.

Si necesita enviar un montón de correos electrónicos de servicio al cliente a la vez, es mejor poner un retraso entre cada uno, porque si envía demasiados correos electrónicos casi idénticos a un dominio a la vez, seguramente terminará en su lista negra.

Algunos dominios son imposibles de entregar a veces. Comcast.net es lo peor.

Asegúrese de que sus direcciones IP no estén incluidas en sitios como http://www.mxtoolbox.com/blacklists.aspx .

Eric Z Beard
fuente
2
¿Qué es un NDR? ¿Puedes por favor elaborar?
Pykih
2
Informe de no entrega, también conocido como mensaje de devolución .
tripleee
14

Odio decírtelo, pero yo y otros podemos estar usando los valores predeterminados de la lista blanca para controlar nuestro filtrado de spam.

Esto significa que todo el correo electrónico de una fuente desconocida es automáticamente spam y se desvía a una carpeta de spam. (No dejo que mi servicio de correo electrónico elimine el correo no deseado, porque siempre quiero revisar las llegadas en busca de falsos positivos, algo que es bastante fácil de hacer mediante un escaneo rápido de la carpeta).

Incluso tengo un correo electrónico de mí mismo que va al buzón de correo no deseado porque (1) generalmente no me envío correos electrónicos a mí mismo y (2) hay spammers que falsifican mi dirección de retorno en el correo no deseado que me envían.

Entonces, para salir de la designación de spam, debo considerar que su correo podría ser legítimo (de la información del remitente y del asunto) y abrirlo primero en texto sin formato (mi valor predeterminado para todo el correo entrante, spam o no) para ver si es legítimo . Mi carpeta de correo no deseado no utilizará ningún enlace en los correos electrónicos, por lo que estoy protegido contra enlaces de imágenes difíciles y otros comportamientos incorrectos.

Si quiero que las llegadas futuras de la misma fuente vayan a mi casilla de entrada y no se desvíen para la revisión de spam, se lo especificaré a mi cliente de correo electrónico. Para aquellas organizaciones que usan reenviadores de correo masivo y direcciones de remitente únicas por pieza de correo, eso es una lástima. Nunca obtienen mi aprobación y siempre aparecen en mi carpeta de spam, y si estoy ocupado nunca los miraré.

Finalmente, si un correo electrónico no es legible en texto sin formato, incluso cuando se envía como HTML, es probable que solo lo elimine a menos que sea algo que sé que es de mi interés en virtud de la fuente y las valiosas experiencias anteriores.

Como puede ver, en última instancia está bajo el control de los usuarios y no existe un acto automatizado que convenza a dicho sistema de que su correo es legítimo solo por su estructura. En este caso, debe jugar bien, no hacer nada similar a la suplantación de identidad (phishing) y facilitar a los usuarios dispuestos a confiar en su correo que lo agreguen a su lista blanca.

orcmid
fuente
13

uno de los correos electrónicos de mi aplicación se etiquetaba constantemente como spam. era html con un solo enlace, que envié como html en el cuerpo con un tipo de contenido text / html.

mi solución más exitosa a este problema fue componer el correo electrónico para que pareciera que fue generado por un cliente de correo electrónico.

Cambié el correo electrónico para que fuera un documento MIME multiparte / alternativo y ahora genero partes text / plain y text / html.

Outlook ya no detecta el correo electrónico como basura.

glob
fuente
este enfoque también es útil para las personas conscientes de la seguridad que no usan clientes de correo electrónico con capacidad HTML,
Jasen
13

Yahoo utiliza un método llamado Id. Del remitente, que puede configurarse en el Asistente de configuración de SPF e ingresarse en su DNS. También uno de los más importantes para Exchange, Hotmail, AOL, Yahoo y otros es tener un DNS inverso para su dominio. Esos eliminarán la mayoría de los problemas. Sin embargo, nunca puede evitar que una persona bloquee intencionalmente sus reglas personalizadas.

Nick Berardi
fuente
3
Yahoo usa registros SPF y DomainKeys; SenderID es una tecnología diferente (y en muchos sentidos, incompatible, insegura y mal diseñada), que no debe utilizarse.
Dan Udey
11

Necesita una entrada de DNS inversa. No necesita enviar el mismo contenido al mismo usuario dos veces. Debe probarlo con algunos clientes comunes de correo web y correo electrónico. Personalmente, ejecuté el mío a través de un asesino de spam recién instalado, un asesino de spam capacitado y varias cuentas hotmail, gmail y aol.

Pero, ¿has visto ese spam que no parece vincularse ni anunciar nada? Es un spammer que intenta afectar su filtro bayesiano. Si puede obtener una calificación alta y luego incluir algunas palabras que estarían en sus correos electrónicos futuros, podría aprenderse automáticamente como bueno. Por lo tanto, realmente no puede adivinar cómo se configurará el filtro de un usuario en el momento de su envío.

Por último, no ordené mi lista por dominios, sino que la aleatoricé.

dlamblin
fuente
10

Descubrí que usar los nombres y apellidos reales del destinatario en el cuerpo es una forma segura de atravesar un filtro de spam.

CVertex
fuente
8

En el Reino Unido también es una buena práctica incluir una dirección física real para su empresa y su número registrado.

De esa manera, todo es abierto y honesto, y es menos probable que lo marquen manualmente como spam.

Keith
fuente
7

Yo podria agregar :

Proporcione una baja real al hacer clic en "Cancelar suscripción". He visto boletines informativos reales que proporcionan un enlace de cancelación de suscripción que, al hacer clic, muestra "se ha cancelado la suscripción correctamente", pero aún recibiré más boletines.

Andrei Rînea
fuente
7

Lo más importante que puede hacer es asegurarse de que las personas a las que envía el correo electrónico probablemente no presionen el botón "Spam" cuando reciban su correo electrónico. Entonces, cumpla con las siguientes reglas generales:

  • Asegúrese de contar con el permiso de las personas a las que envía el correo electrónico. Nunca envíe correos electrónicos a alguien que no lo solicitó.

  • Identifique claramente quién es usted en la parte superior de cada mensaje y por qué la persona recibe el correo electrónico.

  • Al menos una vez al mes, envíe un recordatorio por correo electrónico a las personas en su lista (si está ejecutando una lista), obligándolos a volver a participar en la lista para seguir recibiendo comunicaciones de usted. Sí, esto significará que su lista se acortará con el tiempo, pero la ventaja es que las personas en su lista están "compradas" y es menos probable que marquen su correo electrónico.

  • Mantenga su contenido altamente relevante y útil.

  • Brinde a las personas una forma fácil de optar por no recibir más comunicaciones.

  • Use un servicio de envío de correo electrónico como SendGrid que trabaje duro para mantener una buena reputación de IP.

  • Evite el uso de enlaces cortos, estos a menudo están en la lista negra.

Seguir estas reglas generales será de gran ayuda.

Ken Simpson
fuente
6

He tenido el mismo problema en el pasado en muchos sitios que he hecho aquí en el trabajo. El único método garantizado para asegurarse de que el usuario reciba el correo electrónico es aconsejarle que lo agregue a su lista segura. Cualquier otro método realmente solo será algo que pueda ayudarlo y no está garantizado.

Tanerax
fuente
6

Es muy posible que las personas que se suscriban a su servicio ingresen correos electrónicos con errores de mecanografía que usted no corrige. Por ejemplo: chris @ gmial.com -o- james @ hotnail.com .

Y dichos dominios están configurados para ser utilizados como trampas de spam que marcarán automáticamente la IP y / o dominio de su servidor de correo electrónico y su reputación.

Para evitar esto, verifique dos veces la dirección de correo electrónico que ingresó en la suscripción de su producto. Además, envíe un correo electrónico de confirmación para asegurarse realmente de que esta dirección de correo electrónico esté 100% validada por un ser humano que ingrese el correo electrónico de confirmación, antes de enviarles la clave del producto o aceptar su suscripción. El correo electrónico de verificación debe requerir que el destinatario haga clic en un enlace o responda para confirmar realmente que el propietario del buzón es la persona que se registró.

Miki Berkovich
fuente
1
Esta. Nada en la respuesta actualmente aceptada hace ninguna diferencia si no practicas la higiene básica de suscripción en primer lugar.
tripleee
4

Parece que depende de algunos comentarios para determinar qué se está atascando en el extremo receptor. Debería verificar el correo saliente usted mismo en busca de "spaminess" obvio.

Compre cualquier sistema de control de spam decente y envíe su correo saliente a través de él. Si envía un volumen de correo decente, debería hacerlo de todos modos, debido al riesgo de enviar virus salientes, especialmente si tiene usuarios de Windows de escritorio.

Proofpoint tenía spam + antivirus + algunos servicios de reputación en una sola implementación, por ejemplo. (Solía ​​trabajar allí, así que resulta que lo sé por completo. Estoy seguro de que otros proveedores en este espacio tienen características similares). Pero se entiende la idea. Si envía su correo a través de una configuración básica de control de spam comercial, y no pasa, no debería salir de su red.

Además, hay algunas compañías que pueden ayudarlo a aumentar las tasas de entrega de correo electrónico saliente que no es spam, como Habeas.

benc
fuente
3

Google tiene una herramienta y pautas para esto. Puede encontrarlos en: https://postmaster.google.com/ Regístrese y verifique su nombre de dominio y Google proporciona una puntuación individual de esa dirección IP y dominio.

De las pautas de remitentes masivos :

La autenticación asegura que sus mensajes se puedan clasificar correctamente. Es probable que los correos electrónicos que carecen de autenticación sean rechazados o colocados en la carpeta de correo no deseado, dada la alta probabilidad de que sean mensajes falsificados utilizados para estafas de phishing. Además, los correos electrónicos no autenticados con archivos adjuntos pueden ser rechazados por razones de seguridad.

Para garantizar que Gmail pueda identificarte:

  • Use una dirección IP consistente para enviar correo masivo.
  • Mantenga registros DNS inversos válidos para la (s) dirección (es) IP desde la que envía el correo, apuntando a su dominio.
  • Use la misma dirección en el encabezado 'De:' en cada correo masivo que envíe. También recomendamos lo siguiente:

  • Firmar mensajes con DKIM. No autenticamos mensajes firmados con claves con menos de 1024 bits.

  • Publicar un registro SPF.
  • Publicar una política DMARC.
Kurt Van den Branden
fuente
1

Siempre uso: https://www.mail-tester.com/

Me da retroalimentación sobre la parte técnica de enviar un correo electrónico. Al igual que los registros SPF, DKIM, puntaje Spamassassin, etc. Aunque sé lo que se requiere, continuamente cometo errores y mail-tester.com hace que sea fácil descubrir qué podría estar mal.

Filip
fuente
1

En primer lugar, debe asegurarse de que los mecanismos de autenticación de correo electrónico requeridos como SPF y DKIM estén en su lugar. Estas dos son formas destacadas de demostrar que usted fue el remitente real de un correo electrónico y que en realidad no es falso. Esto reduce las posibilidades de que los correos electrónicos se filtren como spam.

Lo segundo es que puede verificar la salida DNS inversa de su nombre de dominio con diferentes DNSBL. Utilice el siguiente comando simple en la terminal:

  **dig a +short (domain-name).(blacklist-domain-name)**

  ie.  dig a +short example.com.dsn.rfc-clueless.org
  > 127.0.0.2

En los ejemplos anteriores, esto significa que su dominio "example.com" aparece en la lista negra pero debido al Cumplimiento de la configuración del dominio (dominio de la lista rfc-clueless.org que tiene un problema de cumplimiento)

nota: prefiero la herramienta multivalley y pepipost para verificar las listas de dominios.

La dirección de origen / respuesta a la identificación debe ser adecuada, siempre use el botón visible para cancelar la suscripción dentro de su cuerpo de correo electrónico (esto ayudará a sus usuarios a cerrar sesión en su lista de correo electrónico sin eliminar la reputación de su dominio)

snipperbytes
fuente
0

Para permitir que DMARC verifique que SPF pase y también se alinee cuando use sendmail, asegúrese de configurar la dirección ( -fo -rparámetro) del remitente del sobre en algo que coincida con el dominio en la From:dirección del encabezado.

Con PHP:

El uso de la función incorporada de PHP mail()sin establecer el quinto parámetro hará que las comprobaciones de DMARC SPF se desalineen si no se realizan correctamente. De forma predeterminada, sendmail enviará el correo electrónico con el usuario del servidor web como el encabezado RFC5321 .MailFrom / Return Path.

Por ejemplo, supongamos que aloja su sitio web domain.comen el host.comservidor web. Si no establece el parámetro de parámetros adicionales:

mail($to,$subject,$message,$headers); // Wrong way

El destinatario del correo electrónico recibirá un correo electrónico con los siguientes encabezados de correo:

Return-Path: <[email protected]>
From: <[email protected]>

Aunque esto pasa las comprobaciones de SPF, estará desalineado (ya que domain.com y host.com no coinciden), lo que significa que la comprobación de DMARC SPF fallará como desalineada.

En su lugar, debe pasar la dirección del remitente del sobre a sendmail incluyendo el quinto parámetro en la mail()función PHP , por ejemplo:

mail($to,$subject,$message,$headers, '-r [email protected]'); // Right way

En este caso, el destinatario del correo electrónico recibirá un correo electrónico con los siguientes encabezados de correo:

Return-Path: <[email protected]>
From: <[email protected]>

Dado que ambos encabezados contienen direcciones de domain.com, SPF pasará y también estará alineado, lo que significa que DMARC también pasará la verificación de SPF.

Miguel
fuente