Para el servidor de correo electrónico uso iredmail
. Tengo un servidor de correo electrónico con la siguiente configuración:
# /etc/hostname
mail
# /etc/hosts
127.0.1.1 mail.mydomain.com mail
127.0.0.1 localhost
entonces FQDN es mail.mydomain.com
.
AquíEncontré ejemplos que usé, pero con estos ejemplos mi servidor podía enviar correos electrónicos, pero no recibir:
Type Name Value TTL
A @ 195.201.40.1 1 hour # Web server
A mail 195.201.40.2 1 hour # Mail server
MX @ mail.mydomain.com (Priority: 10) 1 hour
TXT @ v=spf1 ip4:195.201.40.2 -all 1 hour
TXT @ v=DMARC1; p=reject; sp=reject;... 1 hour
TXT _adsp._domainkey dkim=all
TXT dkim._domainkey v=DKIM1; k=rsa; p=MIGfMA0GCSq...
Luego cambié:
MX @ mail.mydomain.com (Priority: 10) 1 hour
a
MX mail mail.mydomain.com (Priority: 10) 1 hour
y el servidor de correo comenzó a recibir correos electrónicos.
Tengo dos bloques de preguntas:
1) Según tengo entendido, los servicios de correo electrónico externos (por ejemplo, Gmail) envían correos electrónicos a mydomain.com
, no a mail.mydomain.com
, porque mi dirección de correo electrónico se parece [email protected]
y no a [email protected]
. ¿Por qué cambiar @
para mail
resolver el problema de recibir correos electrónicos?
Entiendo el registro MX @ mail.mydomain.com
como: "servicio de correo electrónico externo, si envía correo electrónico a[correo electrónico protegido](@ = midominio.com), luego envíe un correo electrónico al servidor con FQDN mail.midominio.com", pero mi lógica parece no funcionar. ¿Por qué?
AquíPodemos ver que el nombre de host puede tener @
un FQDN diferente. ¿Por qué en mi caso no funciona?
2) Para registros TXT, ¿qué nombre debo proporcionar? @
o mail
, es decir, nombre de dominio o nombre de host? Si mail
, ¿significa que si tengo 10 servidores de correo, para todos necesito hacer sus propios registros TXT?
Respuesta1
He traducido sus registros DNS al formato de enlace. A menos que esté cambiando una entrada, no debería necesitar especificar el TTL para una entrada.
He convertido los registros SPF a la forma más simple. La A
regla para el mail
registro es para -helo
controles SPF. La regla www
indica que no se debe enviar ningún correo electrónico desde el www
subdominio.
Entradas para su dominio, le siguen los subdominios. (Tenga en cuenta el punto al final del registro MX. Si falta, simplemente debe usar mail
).
@ IN A 195.201.40.1
IN MX mail.mydomain.com.
IN TXT "v=spf1 mx -all"
Servicios estándar de correo y www (algunos navegadores probarán www incluso si no se proporciona en la entrada).
mail IN A 195.201.40.2
IN TXT "v=spf1 a -all"
www IN A 195.201.40.1
IN TXT "v=spf1 -all"
Configuración para DMARC con informes. Hasta que los informes indiquen que no tiene problemas, no utilizaría una reject
política. Es posible que desee comenzar con none
su póliza.
_dmarc IN TXT "v=DMARC1; p=reject; sp=reject;..."
*._report.dmarc IN TXT "v=DMARC1"
Configuración para DKIM. _adsp
ya no parece estar en el camino de los estándares. Reemplácela dkim
con el nombre de la clave que utiliza al iniciar sesión.
_adsp._domainkey IN TXT dkim=all
dkim._domainkey IN TXT v=DKIM1; k=rsa; p=MIGfMA0GCSq...
Respuesta2
1) El correo se enviará al nombre de host especificado en el registro MX para la parte del nombre de host de la dirección de correo electrónico. Por ejemplo, cuando se envía correo a[correo electrónico protegido], ocurre lo siguiente:
Uno de los registros MX configurados se toma para gmail.com:
# dig mx gmail.com +short | head -n 1
5 gmail-smtp-in.l.google.com.
El correo electrónico se entrega a la dirección IP del servidor de correo correspondiente:
# dig gmail-smtp-in.l.google.com +short
173.194.221.27
En su caso, no está claro cómo se resolvió el problema ya que la configuración inicial parece buena. Intente verificar qué servidor MX es responsable de su nombre de dominio y a qué dirección IP se refiere mediante DNS público:
# dig mx mydomain.com @8.8.8.8 +short
mail.mydomain.com
# dig mail.mydomain.com @8.8.8.8 +short
2) mail.
Se debe proporcionar el nombre de dominio (sin parte) para el registro SPF. En cuanto a DKIM y DMARC, también se deben agregar prefijos al nombre de dominio (sin mail.
parte), por ejemplo:
TXT _dmarc v=DMARC1; p=reject; sp=reject;...
TXT dkim._domainkey v=DKIM1; k=rsa; p=MIGfMA0GCSq...