Wie konfiguriert man DNS richtig für zwei Server: einen für das Web und einen für E-Mails?

Wie konfiguriert man DNS richtig für zwei Server: einen für das Web und einen für E-Mails?

Als E-Mail-Server verwende ich iredmail. Ich habe einen E-Mail-Server mit den folgenden Einstellungen:

# /etc/hostname
mail

# /etc/hosts
127.0.1.1 mail.mydomain.com mail
127.0.0.1 localhost

also ist FQDN mail.mydomain.com.

HierIch habe Beispiele gefunden, die ich verwendet habe. Mit diesen Beispielen konnte mein Server jedoch E-Mails senden, aber nicht empfangen:

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...

Dann habe ich geändert:

MX        @   mail.mydomain.com (Priority: 10)  1 hour

Zu

MX        mail    mail.mydomain.com (Priority: 10)  1 hour

und der Mailserver begann, E-Mails zu empfangen.

Ich habe zwei Fragenblöcke:

1) So wie ich es verstehe, senden externe E-Mail-Dienste (z. B. Gmail) E-Mails an mydomain.comund nicht an mail.mydomain.com, da meine E-Mail-Adresse wie [email protected]und nicht wie aussieht. Warum wurde das Problem des E-Mail-Empfangs durch [email protected]die Änderung @auf gelöst?mail

Ich verstehe den Eintrag MX @ mail.mydomain.comals: "Externer E-Mail-Dienst, wenn Sie E-Mails senden an[email geschützt](@ = meinedomain.com), dann senden Sie eine E-Mail an den Server mit dem FQDN „mail.meinedomain.com“, aber meine Logik scheint nicht zu funktionieren. Warum?

HierWir können sehen, dass der Hostname @unterschiedliche FQDNs haben kann. Warum funktioniert das in meinem Fall nicht?

2) Welchen Namen muss ich für TXT-Einträge angeben? @Oder mail, also Domänenname oder Hostname? Wenn ja mail, bedeutet das, dass ich, wenn ich 10 Mailserver habe, für jeden von ihnen eigene TXT-Einträge erstellen muss?

Antwort1

Ich habe Ihre DNS-Einträge in das Bind-Format übersetzt. Sofern Sie keinen Eintrag ändern, müssen Sie die TTL für einen Eintrag nicht angeben.

Ich habe die SPF-Einträge in die einfachste Form umgewandelt. Die ARegel für den mailEintrag ist für SPF- -heloPrüfungen. Die Regel für gibt an, dass keine E-Mails von der Subdomäne wwwgesendet werden sollen .www

Es folgen Einträge für Ihre Domain, Subdomains. (Beachten Sie den Punkt am Ende des MX-Records. Fehlt dieser, verwenden Sie einfach mail).

 @       IN  A    195.201.40.1
         IN  MX   mail.mydomain.com.
         IN  TXT  "v=spf1 mx -all"

Standarddienste: E-Mail und www (einige Browser versuchen es mit www, auch wenn es im Eintrag nicht angegeben ist).

 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"

Konfiguration für DMARC mit Berichterstellung. Solange die Berichte nicht anzeigen, dass Sie keine Probleme haben, würde ich keine rejectRichtlinie verwenden. Vielleicht möchten Sie mit noneals Ihrer Richtlinie beginnen.

 _dmarc  IN  TXT  "v=DMARC1; p=reject; sp=reject;..."
 *._report.dmarc  IN TXT "v=DMARC1"

Konfiguration für DKIM. _adspscheint nicht mehr dem Standard zu entsprechen. Ersetzen Sie es dkimdurch den Schlüsselnamen, den Sie beim Signieren verwenden.

 _adsp._domainkey IN  TXT dkim=all
 dkim._domainkey  IN  TXT  v=DKIM1; k=rsa; p=MIGfMA0GCSq...

Antwort2

1) Die E-Mail wird an den Hostnamen gesendet, der im MX-Eintrag für den Hostnamenteil der E-Mail-Adresse angegeben ist. Wenn die E-Mail beispielsweise an[email geschützt], geschieht Folgendes:

Einer der konfigurierten MX-Records wird für gmail.com verwendet:

# dig mx gmail.com +short | head -n 1
5 gmail-smtp-in.l.google.com.

E-Mails werden an die IP-Adresse des entsprechenden Mailservers zugestellt:

# dig gmail-smtp-in.l.google.com +short
173.194.221.27

In Ihrem Fall ist nicht klar, wie das Problem gelöst wurde, da die anfängliche Konfiguration gut aussieht. Versuchen Sie mithilfe des öffentlichen DNS zu überprüfen, welcher MX-Server für Ihren Domänennamen verantwortlich ist und auf welche IP-Adresse er verweist:

# dig mx mydomain.com @8.8.8.8 +short
mail.mydomain.com
# dig mail.mydomain.com @8.8.8.8 +short

2) Der Domänenname (ohne mail.Teil) muss für den SPF-Eintrag angegeben werden. Wie bei DKIM und DMARC müssen dem Domänennamen (ohne mail.Teil) auch Präfixe hinzugefügt werden, z. B.:

TXT       _dmarc             v=DMARC1; p=reject; sp=reject;...
TXT       dkim._domainkey    v=DKIM1; k=rsa; p=MIGfMA0GCSq...

verwandte Informationen