Synchronizacja IMAP i przełączenie MX
Moduł 8: Przeprowadzka i porządkowanie domeny · Czas czytania: 12 minut
Cel lekcji: Po tej lekcji będą Państwo potrafili skopiować skrzynki pocztowe za pomocą synchronizacji IMAP, przeprowadzić przełączenie MX oraz za pomocą zapytań DNS sprawdzić, czy nowa poczta trafia we właściwe miejsce.
Kluczowe pojęcia: synchronizacja IMAP (imapsync), źródło i cel, powiązanie folderów (Sent/Wysłane), pierwsza i druga runda, zapobieganie duplikatom, Message-ID, limit miejsca (quota) i duże załączniki, zmiana MX, TTL i pamięci podręczne (cache), okres przejściowy, tymczasowy dostęp do starego serwera przez nazwę serwera, przełączanie urządzeń, mail.<domena> wskazuje już na nowy serwer
Jak działa synchronizacja IMAP
Synchronizacja IMAP to program, który loguje się jednocześnie do dwóch skrzynek pocztowych: źródła (starej skrzynki) i celu (nowej skrzynki). Odczytuje listę folderów ze źródła, tworzy te same foldery w celu i kopiuje dla każdego folderu każdą wiadomość, której jeszcze brakuje w celu. Najbardziej znanym programem jest imapsync, program open source, którego wielu dostawców używa za kulisami swoich narzędzi do migracji.
Co warto wiedzieć:
- Dane są kopiowane, a nie przenoszone. W źródle nic się nie zmienia. Dlatego mogą Państwo kopiować spokojnie, podczas gdy stara skrzynka nadal działa.
- Druga runda pomija to, co już jest. Program rozpoznaje wiadomości, które już znajdują się w celu, zwykle po nagłówku
Message-IDi kilku innych nagłówkach. Dzięki temu mogą Państwo synchronizować tak często, jak chcą, bez ryzyka duplikatów. - Flagi są przenoszone razem z wiadomościami: przeczytane, z odpowiedzią, oznaczone. Dzięki temu nowa skrzynka wygląda tak samo jak stara.
- Cel musi mieć wystarczająco dużo miejsca. Jeśli synchronizacja zatrzyma się w połowie, zwykle oznacza to, że nowa skrzynka jest pełna. Proszę zwiększyć limit miejsca i uruchomić ponownie: proces będzie kontynuowany od miejsca, w którym się zatrzymał.
Powiązanie folderów: Wysłane nie zawsze oznacza Wysłane
Każdy dostawca inaczej nazywa foldery specjalne. U jednego folder z wysłaną pocztą nazywa się Sent, u innego Sent Items, Verzonden items lub INBOX.Sent. Gmail nie ma prawdziwych folderów, lecz etykiety, które przez IMAP pokazywane są jako foldery, na przykład [Gmail]/Verzonden berichten i [Gmail]/Alle berichten.
Bez powiązania w nowej skrzynce powstanie folder Sent Items obok własnego folderu Wysłane, a program pocztowy będzie korzystał tylko z jednego z nich (lekcja 3.1). Dobre narzędzia migracyjne automatycznie powiązują foldery specjalne; imapsync ma do tego opcję --automap, a za pomocą --regextrans2 mogą Państwo samodzielnie przekształcać nazwy. Po pierwszej rundzie proszę sprawdzić, czy wysłana poczta znajduje się we właściwym folderze.
Dwie kwestie wymagające uwagi przy Gmailu:
- Wszystkie wiadomości (
[Gmail]/All Mail) zawierają całą pocztę, w tym wszystko, co znajduje się w innych etykietach. Jeśli skopiują Państwo także ten folder, wszystko pojawi się podwójnie. Zwykle warto go pominąć, chyba że mają Państwo pocztę, która jest zarchiwizowana wyłącznie tam. - Wiadomość z trzema etykietami jest widoczna przez IMAP w trzech folderach, więc zostanie skopiowana trzykrotnie. Jest to zamierzone działanie, ale wpływa na wykorzystanie miejsca na dysku.
Folderów z wydarzeniami kalendarza lub kontaktami (przy Microsoft 365 i Exchange czasami widać je również przez IMAP) nie można skopiować jako pocztę. Dobre narzędzie pomija je i zgłasza ten fakt.
Pierwsza runda
Proszę rozpocząć pierwszą rundę z dużym wyprzedzeniem przed przełączeniem MX, gdy nowe skrzynki są już gotowe. Dla każdej skrzynki pocztowej potrzebne będą:
- serwer IMAP źródła (na przykład
imap.mailprovider.examplelub nazwa serwera dotychczasowego pakietu hostingowego); - adres i hasło (lub hasło aplikacji, lub login Microsoft, lekcja 8.1) źródła;
- adres i hasło celu oraz nazwa serwera nowego dostawcy.
Pułapka: jeśli Państwa stary serwer IMAP jest ustawiony jako mail.example.com, a DNS został już przeniesiony? Wtedy mail.example.com może już wskazywać na nowy serwer, a program skopiuje dane z nowej skrzynki do nowej skrzynki. Dla źródła proszę zawsze używać stałej nazwy serwera dotychczasowego dostawcy (znajdą ją Państwo w starym e-mailu powitalnym lub w panelu klienta), a nie nazwy pod własną domeną.
Duże skrzynki pocztowe z licznymi załącznikami kopiuje się długo: przy wielu gigabajtach danych proszę liczyć się z godzinami pracy. Proszę pozwolić programowi działać; większość narzędzi po przerwaniu kontynuuje od miejsca, w którym się zatrzymała.
Przełączenie MX
Czy skrzynki pocztowe zostały już skopiowane, a rekordy dla SPF, DKIM i DMARC są gotowe (lekcja 8.1, krok 3)? Wówczas proszę zmienić rekordy MX na wartości podane przez nowego dostawcę. Następnie:
- Proszę sprawdzić u serwera nameserver będącego źródłem autorytatywnym (authoritative), czy nowy MX już tam jest. Widać to od razu, bez pamięci podręcznej:
$ dig +short NS example.com
ns1.dns.example.
ns2.dns.example.
$ dig +norecurse MX example.com @ns1.dns.example.
;; ANSWER SECTION:
example.com. 300 IN MX 10 mx1.newprovider.example.
example.com. 300 IN MX 20 mx2.newprovider.example.- Proszę sprawdzić u publicznego resolvera, co widzi reszta internetu. Jeśli tam nadal pojawia się stara wartość, oznacza to, że ten resolver ma ją jeszcze w pamięci podręcznej, aż upłynie TTL:
$ dig MX example.com @9.9.9.9
example.com. 212 IN MX 10 mx.oldprovider.example.Liczba (212) oznacza pozostały czas w sekundach. Po jego upływie resolver zapyta ponownie.
- Proszę wysłać testową wiadomość z adresu spoza Państwa domeny (na przykład z darmowej usługi pocztowej lub z telefonu przez internet mobilny) i sprawdzić, czy dotrze do nowej skrzynki. W nagłówkach (lekcja 1.5) w najwyższych wierszach
Receivedwidać, przez który serwer wiadomość dotarła.
Okres przejściowy
W trakcie przejścia poczta czasami nadal trafia na stary serwer: od nadawców, których resolver wciąż zna stary MX, oraz od serwerów, które miały wiadomość w kolejce do starego serwera. Nie jest to problem, dopóki stara skrzynka nadal istnieje. Dwa sposoby, by niczego nie przeoczyć:
- Druga runda synchronizacji dzień po przełączeniu (lub później, w zależności od starego TTL). Zostaną pobrane tylko nowe wiadomości. Przy przeprowadzce domeny ze zmianą serwerów nazw warto wykonać jeszcze jedną rundę po dwóch lub trzech dniach.
- Lub tymczasowe ustawienie obu skrzynek w programie pocztowym, przy czym starą skrzynkę przez stałą nazwę serwera dotychczasowego dostawcy. Dzięki temu od razu widać ewentualne opóźnione wiadomości.
Poczta, którą wysyłają Państwo w tym okresie, idzie przez serwer wychodzący ustawiony na danym urządzeniu. Proszę zadbać, by SPF w tym okresie obejmował obu dostawców, w przeciwnym razie Państwa poczta wysłana przez "niewłaściwy" serwer może uzyskać gorszą ocenę u odbiorcy.
Przełączanie urządzeń
Na każdym urządzeniu proszę skonfigurować nową skrzynkę jako nowe konto z IMAP i danymi nowego dostawcy (moduł 2). Następnie proszę usunąć stare konto. Dlaczego nie edytować istniejącego konta? Ponieważ program czasami próbuje zsynchronizować starą lokalną kopię z nową skrzynką, co może powodować duplikaty lub zniknięcie folderów.
Proszę nie zapomnieć:
- Szybko usunąć stare konta. Telefon leżący w szufladzie, który wciąż próbuje się zalogować starym hasłem, może spowodować tymczasową blokadę IP u starego lub nowego dostawcy (lekcja 3.4). Wówczas w danej sieci nagle przestaje działać wszystko.
- Wszystko, co wysyła pocztę przez SMTP: strona internetowa, sklep internetowy, skaner, system kasowy (lekcja 8.1).
- Podpisy, reguły i autorespondery trzeba skonfigurować na nowo.
Rezygnację proszę złożyć dopiero potem
Proszę zrezygnować ze starych skrzynek dopiero wtedy, gdy wszystko działa poprawnie przez kilka tygodni i wykonana została ostatnia runda synchronizacji. Następnie proszę uporządkować DNS: usunąć starego dostawcę z SPF, usunąć stary selektor DKIM, przywrócić TTL do normalnej wartości.
W praktyce: jak to wygląda u dostawcy
W WebOké mogą Państwo kopiować za pomocą narzędzia do przeprowadzki poczty w Moje WebOké (samo wybiera nazwę serwera znanych dostawców, loguje się również do Microsoft i po przerwaniu kontynuuje działanie) lub za pomocą Migracje IMAPSync w DirectAdmin (wpisanie hosta źródłowego, użytkownika i hasła, wybranie docelowej skrzynki pocztowej). Druga runda w obu przypadkach pomija to, co zostało już skopiowane. Inni dostawcy mają podobne narzędzia do migracji; pojęcia źródło, cel i druga runda są wszędzie takie same.
Podsumowanie
- Synchronizacja IMAP kopiuje dla każdego folderu to, czego brakuje w celu; druga runda nie tworzy duplikatów.
- Proszę powiązać foldery specjalne (Wysłane, Kosz) i przy Gmailu zwrócić uwagę na etykiety oraz folder Wszystkie wiadomości.
- Dla źródła proszę użyć stałej nazwy serwera dotychczasowego dostawcy, a nie
mail.<Państwa domena>. - Po zmianie MX: najpierw proszę sprawdzić u źródła autorytatywnego, potem publicznie (TTL), a następnie wysłać testową wiadomość spoza systemu.
- Druga runda po upływie starego TTL, urządzenia skonfigurowane jako nowe konto, stare konta usunięte, rezygnacja dopiero po kilku tygodniach.
Quiz
Zadanie
Zadanie Z8.2: Sprawdzenie MX i TTL w okresie przełączania. Proszę wpisać własną domenę (lub użyć wikipedia.org, jeśli nie mają Państwo własnej domeny). Proszę podać: host MX o najniższym priorytecie według serwera autorytatywnego nameserver, TTL rekordu MX u tego serwera nazw oraz dostawcę, u którego trafia Państwa poczta (dowolny tekst). Program zapyta o NS, następnie o MX u serwera autorytatywnego bez pamięci podręcznej oraz o MX u publicznego resolvera. Zestawi odpowiedzi obok siebie i zgłosi, jeśli publiczny resolver nadal podaje inną odpowiedź (oznacza to, że przełączenie nie jest jeszcze widoczne wszędzie).
Dalsza lektura
Kroki opisane w tych artykułach dotyczą paneli WebOké; u innych dostawców działa to w podobny sposób.
- Instrukcja DirectAdmin 10.2: Migracje IMAPSync w DirectAdmin
- Instrukcja DirectAdmin 10.3: Przenoszenie poczty e-mail przez Moje WebOké
- Instrukcja DirectAdmin 10.4: Po przeprowadzce: rekordy MX i Państwa urządzenia
- Przenoszenie poczty e-mail do WebOké za pomocą narzędzia do przenoszenia poczty
- Bezpłatny kurs DNS 6.3: DNS podczas transferu domeny
- Bezpłatny kurs DNS 8.2: Odpytywanie DNS za pomocą dig i nslookup
- imapsync (strona oficjalna): https://imapsync.lamiral.info/
