Mailserverumzug

  • Hallo Community,


    ich betreue einen privaten Mailserver, allerdings mit einem Betriebssystem, was in absehbarer Zeit keine Aktualisierungen mehr bekommt. Nun habe ich parallel ein ähnliches System aufgebaut, ebenfalls mit Postfix und Dovecot. Postfächer sind inklusive Authentifizierungsdaten schon migriert und werden weiterhin laufend mit rsync auf dem aktuellen Stand gehalten. Um die Downtime möglichst kurz zu halten und den Umzug vom alten aufs neue System möglichst elegant zu über die Bühne zu bekommen, möchte ich den Hostname des alten Servers auf den neuen legen. Alle bisherigen Sender nutzen dann also den neuen Mailserver über den alten Hostname. Beim senden der Mails vom Mailserver aus sollte ja kein Problem bestehen, da sich das Mailsystem mit seinem FQDN meldet und der die rDNS Prüfung ja besteht.


    Technisch kann man das auf zwei Wege lösen: einmal mit der Methode, den A/ AAAA Record des alten Mailservers auf die IP Adresse des neuen zu legen; oder die Alternative, den A/ AAAA Record des alten Mailservers zu löschen und stattdessen einen gleichnamigen CNAME Record hinzuzufügen, welcher dann auf den Hostname des neuen Mailservers verweist. Die zweite Variante halte ich für eleganter. Wie seht Ihr das? Zertifikate sind auf beiden Seiten wildcard, die Konfiguration ist gleich. SPF Records sind ja auch schnell angepasst.. Fallen euch andere mögliche Fallstricke ein?


    Eine Änderung der Mailserver in den Clients steht aus verschiedenen Gründen nicht zur Wahl.


    Ich freue mich auf Eure Antworten! :S

  • Alles, was bei meinem letzten Umzug zu Schwierigkeiten geführt hat, hast Du schon vermieden. Was ich gemacht hab, um die Postfächer synchron zu halten: beide Server sind vie VPN verbunden. Darüber hab ich dovecot direkt die Postfächer in beide Richtungen synchronisieren lassen. Es ist damit im Prinzip egal, wie schnell sich die IP-Änderung herumspricht, solange beide Server noch parallel laufen können. Das einzige, was bei mir n bisschen tricky war, war der Webmailer (ne Groupware), der es erforderlich machte, auch die Datenbanken in beide Richtungen zu syncen. Und DIE kommen bei mariadb schon mal ausm Takt, wenn mans sich zu einfach macht.

    Bei mir kam auch noch ne Änderung des Servernamens dazu, den alten hab ich mit rüber rgenommen, das zertifikat galt für beide. Dennoch machten einige Clients Ärger.

  • Zusätzlichen MX-Eintrag auf neuen Server mit niedrigerer Priorität, diesen aber vorerst über iptables sperren. Wenn alle Postfächer vorbereitet und die DNS-Einträge auf den Nameservern durch sind den neuen Server über iptables freigeben und den alten sperren. Danach die MX-Einträge bearbeiten und die Mails vom alten Server auf den neuen übertragen.

    9 von 10 Stimmen in meinem Kopf sagen ich bin nicht verrückt, die letzte summt ständig die Melodie von Tetris.

  • Danke für die hilfreichen Antworten!


    Quote

    Alles, was bei meinem letzten Umzug zu Schwierigkeiten geführt hat, hast Du schon vermieden.

    chaosrind Das ist beruhigend zu lesen ^^


    Der Transfer der Daten funktioniert schon sehr gut. Deine Lösung funktioniert in Echtzeit, meine nur alle paar Minuten. Das ist allerdings verkraftbar. Und mein System besteht glücklicherweise nur aus MTA und MDA.


    Gunah ein Dovecot Cluster ist ebenfalls eine tolle Idee und wäre mal ein Projekt für ein verregnetes Wochenende ^^. Wie oben geschrieben ist rsync für diesen Fall erstmal ausreichend. Ich werde das Script einfach als Cronjob alle 5 Minuten laufen lassen und synchronisiere so die eingehenden Mails vom alten Server. Die TTLs der Records betragen allerdings auch nur wenige Minuten. Deine DNS Lösung hört sich ähnlich wie die von RHA an.


    RHA das klingt nach einer ziemlich sauberen Lösung. Was mache ich allerdings mit den Clients, bei denen die Servernamen nicht änderbar sind? Dann müsste ich ja wie von mir oben beschrieben vorgehen, um die Clients mit dem alten Servernamen auf den neuen Server zu holen. Ich denke, die MX Records werde ich wie von dir beschrieben ändern.

  • wegen der Record "Problematik"


    dein Hostname ist eigtl. "mail.domain.tld", diese ist auch bei allen Clients hinterlegt.

    Auch ist dieser als MX hinterlegt.


    Folgendes kannst du machen.


    1. per IPTables auf dem neuen server den Port 25 Sperren. (usw. alle Port die mit Mails zutun haben)
    2. dem neuen Server einen A Record setzen, wie "new-mail.domain.tld", diese auch als MX Eintrag mit einer anderen prior versehen.
    3. Port 25 auf dem alten Server sperren (ggf. auch die anderen).
    4. Final Sync durchführen.
    5. Ports auf dem neuen Server öffnen
    6. A-Record anpassen.
    7. einige Tage später den A und MX Record entfernen, welcher Doppelt ist.