Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
centos:mail_c7:mta_3 [13.10.2014 21:32. ] djangocentos:mail_c7:mta_3 [22.07.2019 15:01. ] (aktuell) – Externe Bearbeitung 127.0.0.1
Zeile 1: Zeile 1:
 ====== DNS Einstellungen rund um Mailserver ====== ====== DNS Einstellungen rund um Mailserver ======
-{{:centos:mail_c7:postfix-bind-logo.png?nolink&150 |Bild: Postfix & ISC-Bind}} Wie wir in der Postfix [[centos:mail_c7:mta_1#uebersichtsskizze|Übersichtsskizze]] bereits gesehen haben, ist ein funktionierendes **DNS** Grundvoraussetzung, da es so für so gut wie jeder Mailtransport als grundlegender Dienst DNS-Anfrage stellt.+{{:centos:mail_c7:postfix-bind-logo.png?nolink&150 |Bild: Postfix & ISC-Bind}} Wie wir in der Postfix **[[centos:mail_c7:mta_1#uebersichtsskizze|Übersichtsskizze]]** bereits gesehen haben, ist ein funktionierendes **DNS** Grundvoraussetzung, da es so für so gut wie jeder Mailtransport als grundlegender Dienst DNS-Anfrage stellt. 
 + 
 +Für den ordnungsgemäßen Betrieb unseres Mailservers ist es daher unabdingbar, dass unser Nameserver richtig konfiguriert wurde und saubere Rückmeldungen liefert. Vor allem mit Hinblick auf die Teilnahme am eMail-Verkehr mit anderen Mailservern ist hierbei besonders zu achten! 
 + 
 +===== DNS Records ===== 
 +Bevor wir zu den einzelnen **MTA**((**M**ail **T**ransport **A**gent))-Spezifischen **DNS**((**D**omain **N**ame **S**system))-Records kommen, werfen wir kurz noch einen Blick auf die wesentlichen Record-Typen. 
 + 
 +==== A Record ==== 
 +Mit Hilfe eines **A Record**s wird einem FQDN((**F**ull **Q**ualified **D**omain **N**ame))-Hostnamen eine oder auch mehrere IPv4-Adressen zugewiesen. Bei der Suche nach der IP-Adresse des Hosts **mx01.nausch.org** wird bei der //forward//-Auflösung die zugehörige IP-Adresse **217.91.103.190** ermittelt. 
 +   $ dig A nausch.org +short  
 + 
 +   217.91.103.190 
 + 
 +==== AAAA Record ==== 
 +Der **AAAA Record** ist das **IPv6**-Pendant zum **A Record**, sprich der **AAAA Record** bildet einen FQDN((**F**ull **Q**ualified **D**omain **N**ame))-Hostnamen auf eine oder mehrere IPv6-Adressen ab. 
 +   $ dig AAAA mail.sys4.de +short  
 + 
 +   2001:1578:400:111::
 + 
 +==== CNAME Record ==== 
 +Mit Hilfe eines **CNAME**((**C**anonical **NAME**)) kann man einem bestehenden **A**- bzw. **AAAA**-Record einen weiteren Namen zuweisen, also einen Alias damit festlegen. 
 +   # dig mysql.dmz.nausch.org 
 +<code>; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.23.rc1.el6_5.1 <<>> mysql.dmz.nausch.org 
 +;; global options: +cmd 
 +;; Got answer: 
 +;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 38766 
 +;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 1 
 + 
 +;; QUESTION SECTION: 
 +;mysql.dmz.nausch.org.          IN      A 
 + 
 +;; ANSWER SECTION: 
 +mysql.dmz.nausch.org.   86400   IN      CNAME   vml000030.dmz.nausch.org. 
 +vml000030.dmz.nausch.org. 86400 IN      A       10.0.0.30 
 + 
 +;; AUTHORITY SECTION: 
 +dmz.nausch.org.         86400   IN      NS      vml000020.dmz.nausch.org. 
 + 
 +;; ADDITIONAL SECTION: 
 +vml000020.dmz.nausch.org. 86400 IN      A       10.0.0.20 
 + 
 +;; Query time: 0 msec 
 +;; SERVER: 10.0.0.20#53(10.0.0.20) 
 +;; WHEN: Tue Oct 14 14:04:22 2014 
 +;; MSG SIZE  rcvd: 118 
 +</code> 
 + 
 +==== MX Record ==== 
 +Ein **MX**((**M**ail e**X**change))-Record definiert einen oder mehrere Hostnamen, derjenigen Mailserver, die für die entsprechende Domain eMails zuständig sind.  
 +   $ dig MX +short nausch.org 
 + 
 +   10 mx01.nausch.org. 
 +   20 mx1.tachtler.net. 
 + 
 +Mit der Priorität - im obigen Beispiel **10** bzw. **20** wird angegeben, dass der Mailserver mit der höheren Priorität **10** bevorzugt angesprochen werden soll, und erst wenn dieser nicht antwortet auf den Backupmailserver mx1.tachtler.net mit der geringeren Priorität **20** ausgewichen werden soll. Meist wird jedoch von SPAMern diesem Wunsch nicht entsprochen, da diese sich bevorzugt an den Backup-Mailserver wenden, in der Hoffnung, dieser sei nachlässiger gepflegt und somit geringer geschützt. 
 + 
 +Aus diesem Grund werden z.B. oft auch die Mailserver im DNS als gleichwertig hinterlegt, wie in diesem Beispiel. 
 +   $ dig MX sskm.de +short  
 + 
 +   10 mx13.sskm.net. 
 +   10 mx14.sskm.net. 
 +   10 mx11.sskm.net. 
 +   10 mx12.sskm.net. 
 +<WRAP center round important> 
 +Bei der Definition des **MX**-Records ist darauf zu achten, dass der MX-Record **weder** direkt auf eine **__IP-Adresse__** zeigt, **noch** auf einen **CNAME**-Record verweist!  
 +</WRAP> 
 + 
 +==== NS Record ==== 
 +Ein **NS**((**N**ame **S**erver))-Record definiert entweder welche Nameserver offiziell für eine Zone zuständig ist, oder er verknüpft einzelne Zonen einer Domain zu einem Zonen-Baum, auch Delegation genannt. 
 +   $ dig NS mailserver.guru +short  
 + 
 +  ns1.core-networks.de. 
 +  ns3.core-networks.com. 
 +  ns2.core-networks.eu. 
 + 
 + 
 +==== PTR Record ==== 
 +Ein **PTR**((**P**oin**T**e**R**))-Records weist einer IP-Adresse einen oder mehrere Hostnamen zu. Dieser Eintrag stellen somit das Gegenstück zu den beiden Record-Typen **A** un **AAAA** dar. Beim sogenannten **//reverse lookup//** wird beim DNS angefragt, welcher Name bzw. welche Namen zu einer genannten IP-Adresse bekannt ist. 
 +  * **IPv4**: <code> $ dig -x 88.217.171.167 +short</code><code>mx1.tachtler.net.</code> 
 +  * **IPv6**: <code> $ dig -x 2001:1578:dead:beef::7 +short</code><code>mail.sys4.de.</code> 
 + 
 +<WRAP center round important> 
 +Obwohl es keine 100%ige Definition in einem betreffenden **RFC**((**R**equest **F**or **C**omment)), der vorschreibt, dass die IP-Adresse eines Mailservers auf dessen im A-/AAAA-Record definierten Namen zeigen muss, wird diese Forward-/Reverse-Auflösung von vielen Mailservern verwendet um bei negativem Ergebnis dieser Anfragen den einliefernden Host mit einem Malus zu belegen. 
 +Wir sind also gut bedient, wenn wir uns an diese Spielregeln halten und dies bei der Definition der DNS-Einträge unseres Mailservers berücksichtigen.  
 +</WRAP> 
 + 
 +==== SPF Record ==== 
 +Mit Hilfe von **[[centos:mail_c6:mta_10|SPF]]**((**S**ender **P**olicy **F**rameworks)) kann definiert werden, welche Mailserver für welche Domains eMails verschickt werden (können), oder nicht, oder anders ausgedrückt, soll das Fälschen von Absender-Angaben mit Hilfe von SPF erschwert werden. Genauer gesagt schreibt das SPF fest, welcher MTA((**M**ail **T**ransport **A**gent)) abgehend für den Versandt von e-Mails einer Domain zugelassen ist. Wichtige Hinweise zu SPF findet man bei Bedarf in der überarbeiteten Version **[[https://www.ietf.org/rfc/rfc6652.txt|RFC 6652]]**((RFC 6652 aktualisiert [[https://www.ietf.org/rfc/rfc4408.txt|RFC 4408]])) oder auch auf der Webseite von **[[http://www.openspf.org|openspf.org]]**.   
 +   $ dig TXT nausch.org +short 
 + 
 +   "v=spf1 ip4:217.91.103.190/32 mx ?all" 
 + 
 +==== SRV Record ==== 
 +Mit Hilfe eines **SRV**((**S**e**RV**ice))-Records können IP-basierte Dienste, die eine Domain zur Verfügung gestellt werden, veröffentlicht werden. Je Service werden dabei die nötigen Informationen geliefert, die ein Client/Server benötigt, der diesen Dienst nutzen möchte. Jeder dieser Dienste wird durch einen Namen und dessen Protokolls, abgetrennt mit einem Punkt **.**, repräsentiert. Damit es zu keinen Verwechslungen mit anderen Sub-Domains gibt, wird den beiden vorgenannten Werten ein **„_“** vorangestellt. 
 + 
 +Beispiel:  
 +   $ dig -t SRV _autodiscover._tcp.it-ignorant.org +short 
 + 
 +   10 0 443 autodiscover.nausch.org. 
 + 
 +Ein Client der diese Anfrage stellt erhält folgende Informationen:  
 +      * **10** Priorität des angebotenen Dienstes. Hat man mehr als einen Host, der diesen Dienst anbieten soll, kann somit festgelegt werden, welcher Host bevorzugt angesprochen werden sollte. 
 +      * **0** Will man bei gleicher Priorität mehrere Hosts, so kann man für die Lastverteilung über die Gewichtung definieren, welcher Host gewählt werden soll. 
 +      * **443** Der Dienst wird über Port **443** angeboten 
 +      * **autodiscover.nausch.org** Definition des Hostsnamens, der den Dienst anbietet 
 + 
 +Dieses Beispiel wir unter anderem dazu verwendet um **M$-Outlook** die **[[centos:mail_c6:autoconfig_2|Konfigurationsdaten]]** unseres **[[centos:mail_c7:dovecot_1|Dovecot]]**-**MDA**s((**M**ail **D**elivery **A**gent)) automatisch zu übermitteln 
 + 
 +==== TXT Record ==== 
 +Mit Hilfe eines **TXT**((**T**e**XT**))-Records kann man einen frei definierbarern Text in einer DNS-Zone abgelegen.  
 +Nachfolgend gehen wir kurz auf entsprechende **TXT**-Records im Mailserverumfeld ein. 
 +  * **SPF**: So wird z.B. bei einem **[[centos:mail_c7:mta_3#spf_record|SPF]]**-Record definiert, welche Server Mails einer Domäne verschicken darf, und welcher nicht. \\ \\ <code> $ dig TXT nausch.org +short</code><code>"v=spf1 ip4:217.91.103.190/32 mx ?all"</code> 
 +  * **DKIM**: Ein weiterer Anwendungsfall eines TXT-Records im Bezug auf Mailserver ist die Veröffentlichung eines **[[centos:mail_c6:mta_9|DKIM]]**((**D**omain**K**eys **I**dentified **M**ail ))-Schlüssels. \\ \\ <code> $ host -t TXT 140224._domainkey.nausch.org</code><code>;; Truncated, retrying in TCP mode. 
 +140224._domainkey.nausch.org descriptive text "v=DKIM1\; p=" "MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAuJ3/CruOs3fCU0ujOStc" "NN85TJh+5HvMa9m99C5XuRBlxOr+fp5BeIEtiPO0szKvvPojwrueCq0oOuEzjR/i" "2ObpRkzKRUXmAa0qVezUZwQIbKeiuKII0PnpQclDrmQrzSXcQWPT57tkPg17Q9Wa" "mFUUaHeN3+pVGtMyjYekRaAoRlV+a1gD111kXMPhiaFTMIncoRBS/gYN8FjfekH+" "ezqbLHLB8DLJQBZEGUILvJjAHX0722XyqYtkn1qfv63nPRGw/qqAW1072Gchq4ZS" "4ZPQ89SrK4KcHt/XptSlztXMWtmRFQriHdvbjr1Fx7ZwXdTQ+ik2AUZLMdhMrQe6" "/1GujQiMD6po81NpYbrjnfd+QF4sUbus4wPQKVNzsctiuzGlWsFexSHP4dAZtKnI" "mJhVDnzZODQy0nSafedlr5g4VR36vgm0YPWjSyRNnC/APHyw0DtHIrzTqfKuDeGv" "80uMPbEdujrw9gLbK3H8ow42iTicmgPgT3J5j70ZOo4o4FMtpZ/AEQw+VnWpSfw7" "bkMjufLc29XHbtp22wfgq2Lmarr3+psaHokFaQrImkMbzdSL9CdabkLptanAilLS" "cvq8UaKVC+G1+vHDgaweq3BhXD5+YcJnJlp4msUqqxGYlnx4RSvv8PipMU2DsVFb" "NJSH5NJuS7GuzplNg+f20ysCAwEAAQ==" 
 +</code> 
 +  * **ADSP**: Über **ADSP**((**A**uthor **D**omain **S**igning **P**ractices)) kann ein (Mail)-Domaininhaber definieren, was ein Mailserver mit einer zu Annahme anstehenden eMail passieren soll, sofern dessen DKIM((**D**omain**K**eys **I**dentified **M**ail))-Signatur **__nicht__** gültig ist. Für ADSP wird dazu ein eigener Qualifier **_adsp** benutzt. Am Beispiel der Domain **sec-mail.guru** ergibt sich der Name **_adsp._domainkey.sec-mail.guru**. \\ \\ <code>$ host -t TXT _adsp._domainkey.sec-mail.guru</code><code>_adsp._domainkey.sec-mail.guru descriptive text "dkim=discardable\;"</code> Der (TXT)-Datensatz hat dabei folgende Struktur „dkim=<WERT>“. Über den <WERT> kann der Domaininhaber folgendes festlegen: 
 +    * **unknown** Der Domaininhaber signiert einige oder alle Nachrichten. 
 +    * **all** Alle Nachrichten der Mail-Domäne werden mit einer DKIM-Signatur versehen. 
 +    * **discardable** Alle Nachrichten der Mail-Domäne werden mit einer DKIM-Signatur versehen. Darüber hinaus empfiehlt der Domain-Inhaber alle Nachrichten deren DKIM-Signatur gebrochen wurde, bei der die Nachricht also manipuliert wurde, zu Verwerfen (REJECT). \\ \\ 
 +  * **DMARC**: Bei **[[centos:mail_c6:mta_13|DMARC]]**((**D**omain**K**eys **I**dentified **M**ail)) kann definiert werden, wie ein empfangender Mailserver Nachrichten behandeln und verarbeiten soll, insbesondere mit Hinblick auf die Bewertung der Versandberechtigung des einliefernden Mailservers (SPF) und der nicht veränderten Nachricht (DKIM). Fällt eine oder beide Überprüfungen negativ aus, definiert DMARC, ob die eMail in Quarantäne gestellt, die Annahme der eMail abgelehnt (reject) oder eben dennoch zugestellt werden soll. \\ \\ <code> $ dig -t TXT _dmarc.nausch.org +short</code><code>"v=DMARC1\; p=none\; pct=100\; rua=mailto:dmarc-reports@nausch.org,mailto:pv27ekln@ag.dmarcian.com\; ruf=mailto:dmarc-fails@nausch.org,mailto:pv27ekln@fr.dmarcian.com\;"</code> Eine Beschreibung der einzelnen Parameter findet man hier im Wiki im Kapitel [[centos:mail_c6:mta_13|DMARC - Domain-based Message Authentication, Reporting & Conformance]]. 
 + 
 +===== MTA DNS spezifische Records ===== 
 +Für den erfolgreichen Mailserverbetrieb müssen wir nun ein paar wichtige DNS-Konfigurationen vornehmen. Wir benötigen dabei __**mindestens**__ folgende Einträge: 
 +  * **[[centos:mail_c7:mta_3#a_record|A]]** bzw. **[[centos:mail_c7:mta_3#aaaa_record|AAAA-Record]]** 
 +  * **[[centos:mail_c7:mta_3#ptr_record|PTR-Record]]** 
 +  * **[[centos:mail_c7:mta_3#mx_record|MX-Record]]** 
 + 
 +Die folgenenden Records sind optional: 
 +  * **[[centos:mail_c7:mta_3#spf_record|SPF]]**-Record 
 +  * **[[centos:mail_c7:mta_3#srv_record|SRV]]**-Record 
 +  * **[[centos:mail_c7:mta_3#srv_record|TXT]]**-Records: 
 +    * **[[centos:mail_c7:mta_3#spf_record|SPF]]**-Records 
 +    * **[[centos:mail_c7:mta_3#srv_record|DKIM]]**-Record 
 +    * **[[centos:mail_c7:mta_3#srv_record|ADSP]]**-Record 
 +    * **[[centos:mail_c7:mta_3#srv_record|DMARC]]**-Record 
 + 
 +Bei den Einzelnen Anwendungen und Lösungen werden wir auf ggf. nötige Anpassungen im **DNS** zurückkommen. 
 + 
 +====== Links ====== 
 +  * **⇐ Zurück zum Kapitel "Installation und Basiskonfiguration von Postfix [[centos:mail_c7:mta_2|2.11]] bzw. [[centos:mail_c7:postfix3_1|3.x]] unter CentOS 7"** 
 +  * **⇒ Weiter zum Kapitel "Konfiguration unseres MTAs Postfix [[centos:mail_c7:mta_4|2.11]] bzw. [[centos:mail_c7:postfix3_4|3.x]] unter CentOS 7"** 
 +  * **[[centos:mail_c7:start|Zurück zum Kapitel >>Mailserverinstallation unter CentOS 7<<]]** 
 +  * **[[wiki:start|Zurück zu >>Projekte und Themenkapitel<<]]** 
 +  * **[[http://dokuwiki.nausch.org/doku.php/|Zurück zur Startseite]]** 
  
-Für den ordnungsgemäßen Betrieb unseres Mailservers ist es daher unabdingbar, dass unser Nameserver richtig konfiguriert wurde und saubere Rückmeldungen liefert. Vor allem mit Hinblick auf die Teilnahme am eMailverkehr mit anderen Mailservern ist hierbei besonders zu achten! 
  • centos/mail_c7/mta_3.1413235954.txt.gz
  • Zuletzt geändert: 13.10.2014 21:32.
  • von django