todas las guías

// cómo solucionarlo

Tener tu propio servidor de correo: la checklist de entregabilidad

Un servidor Postfix autoalojado puede entregar bien, pero solo si todo lo básico está bien: DNS inverso, SPF, DKIM, DMARC, TLS y nada de open relay.

Qué significa

Cuando gestionas tu propio servidor de correo en un VPS o un servidor dedicado, nadie se ocupa de la reputación ni de la configuración por ti. Gmail y Outlook no conocen tu IP. La juzgan solo por lo que pueden comprobar: nombres, registros DNS, firmas, cifrado y comportamiento. Basta con que falte una pieza para acabar en spam.

Por qué importa

Una IP nueva no tiene historial, así que los receptores son estrictos con ella. Los grandes proveedores se encargan de esto para los usuarios de Google Workspace o Microsoft 365. En tu propio servidor, cada punto de abajo es tarea tuya.

Cómo comprobarlo

Envía un email desde el servidor a tu dirección de prueba de la página de inicio (/). El informe cubre SPF, DKIM, DMARC, DNS inverso, blacklists y SpamAssassin de una vez. Usa /domain-scanner para la parte DNS y /blacklists para la IP.

La checklist

1. El puerto 25 está abierto en salida

Muchas empresas de hosting bloquean el puerto 25 de salida en las cuentas nuevas. Consulta su documentación y pide al soporte que lo desbloquee si hace falta.

2. Un nombre limpio y DNS inverso

  1. Elige un nombre como mail.yourdomain.com y crea un registro A que apunte a la IP del servidor.
  2. Pide a tu hosting que configure el PTR (DNS inverso) de la IP con ese mismo nombre.
  3. Usa el mismo nombre en Postfix:
    myhostname = mail.yourdomain.com

3. SPF

Añade la IP del servidor a tu registro SPF:

v=spf1 ip4:203.0.113.10 ~all

4. DKIM con OpenDKIM

  1. Instala OpenDKIM y genera una clave de 2048 bits:
    opendkim-genkey -b 2048 -d yourdomain.com -s mail
  2. Publica el contenido de mail.txt como registro TXT en mail._domainkey.yourdomain.com.
  3. Conéctalo a Postfix en main.cf (el puerto debe coincidir con el socket de OpenDKIM):
    smtpd_milters = inet:localhost:8891
    non_smtpd_milters = $smtpd_milters
    milter_default_action = accept

5. DMARC

Empieza en modo de monitorización con un registro TXT en _dmarc.yourdomain.com:

v=DMARC1; p=none; rua=mailto:dmarc@yourdomain.com

6. Cifrado TLS

Consigue un certificado (por ejemplo de Let's Encrypt) para mail.yourdomain.com y después:

smtpd_tls_cert_file = /etc/letsencrypt/live/mail.yourdomain.com/fullchain.pem
smtpd_tls_key_file = /etc/letsencrypt/live/mail.yourdomain.com/privkey.pem
smtpd_tls_security_level = may
smtp_tls_security_level = may

7. Nada de open relay

Solo tus propios usuarios pueden enviar a través del servidor:

mynetworks = 127.0.0.0/8 [::1]/128
smtpd_relay_restrictions = permit_mynetworks, permit_sasl_authenticated, defer_unauth_destination

8. Buenos hábitos

  • Comprueba que tu IP no está en una blacklist antes de empezar.
  • Aumenta el volumen poco a poco durante varias semanas.
  • Lee /var/log/mail.log en busca de mensajes de rechazo: normalmente explican el problema.
  • Mantén el sistema actualizado y usa contraseñas robustas para las cuentas de correo.

Después de editar main.cf, recarga Postfix con postfix reload.

Comprueba que está solucionado

Envía una nueva prueba desde el servidor a la dirección de la página de inicio. Todas las secciones deberían superarse: SPF y DKIM alineados con tu dominio, un DNS inverso coherente, ninguna blacklist y una puntuación de spam baja.

Comprueba que está solucionado

Un cambio de DNS puede tardar de unos minutos a unas horas. Después, envía un nuevo email de prueba o vuelve a escanear tu dominio.

Guías relacionadas