cPanel migratsioon: valed e-kirjade kuupäevad

6 min

Esmaspäeva hommik, mis teeb haiget

Oled just lõpetanud cPaneli jagatud hostingust Google Workspace'i või Microsoft 365-i migratsiooni. Kõik läks hästi, postkastid on kättesaadavad, kasutajad saavad sisse logida. Seejärel, kell 9.15, tuleb esimene tugipilet: "Minu vanad meilid näitavad kõik sama kuupäeva - möödunud nädalavahetust." Siis teine. Siis kümme.

See ei ole üksikjuhtum. See on otsene tagajärg sellest, kuidas cPaneli migratsioonid töötlevad (või õigemini ei töötle) e-kirjade kuupäeva metaandmeid.

cPanel, Roundcube, Horde: eriline IMAP-kontekst

cPaneli jagatud hosting on Linuxi server, mis käitab IMAP-serverit (tavaliselt Dovecot) koos Roundcube'i või Horde'iga veebipostina. Midagi eksootiliselt pole. Aga sellel kontekstil on mõned eripärad, mis teevad ettevõtteplatvormidele migreerimise keerulisemaks, kui esmapilgul paistab.

Esiteks koguvad cPaneli postkastid sageli e-kirju aastaid, mõnikord kümme aastat. Klient, kes on oma domeeni jagatud hostingus hoidnud alates 2013. aastast, võib omada väga mahukaid arhiive. See maht koos migratsiooni teostamise viisiga loob soodsa pinnase kuupäevaprobleemile.

Teiseks kasutatakse nende migratsioonide jaoks sageli kas WHM-i sisseehitatud migratsioonivahendit, käsurealt käivitatud imapsync'i (hostingu pakkuja või IT-teenuse osutaja poolt) või tarbijapõhiseid lahendusi nagu GSMMO Google Workspace'i migreerimiseks.

Miks kuupäevad lähevad cPaneli migratsioonil katki

Probleemi mõistmiseks tuleb selgeks teha kaks erinevat mõistet: e-kirja päis Date: ja IMAP INTERNALDATE.

Päis Date: kirjutatakse sõnumi toorkorpusesse saatmise hetkel, vastavalt RFC 2822 standardile. See näitab, millal e-kiri koostati ja saadeti. See päis ei muutu kunagi, välja arvatud sõnumi tahtliku muutmise korral.

INTERNALDATE on aga metaandmed, mille IMAP-server seostab iga talletatud sõnumiga. See on sõnumi sisust eraldi. Kui e-kiri saabub serverisse tavapäraselt, määratakse INTERNALDATE sõnumi Received: päiste põhjal või esitamise kuupäevast, kui sõnum esitatakse otse. Just seda väärtust kasutavad Outlook, Thunderbird ja enamik meiliklientidest sõnumite sorteerimisel.

IMAP-migratsiooni käigus kopeeritakse sõnumid ühelt serverilt teisele. Probleem on selles, et migratsioonivahend peab looma iga sõnumi sihtserveris uuesti. Paljude tööriistade puhul vastab uusloodud sõnumi INTERNALDATE migratsiooni kuupäevale, mitte sõnumi algsele kuupäevale. Lisaks lisatakse päistesarja ülaosa migratsioonikuupäevaga ajatempeldatud Received: päis, mis häirib veelgi neid meiliklientidel, kes tuginevad sellele kuupäeva kuvamisel.

Tulemus: 2019. aasta e-kiri saabub Google Workspace'i INTERNALDATE'iga, mis on seatud migratsioonipäevale, ja Received: päisega, mis kannab eilset kuupäeva. Outlook kuvab selle postkastis nii, nagu see oleks just saabunud. Kogu arhiveerimise kronoloogia on rikutud.

WHM / cPaneli migratsioonivahend

WHM-i sisse ehitatud vahend cPaneli kontode migreerimiseks teisele platvormile tekitab selle probleemi peaaegu süstemaatiliselt, kui sihtplatvorm on väline IMAP-server (Google Workspace, Microsoft 365). See kopeerib Maildir sisu uuele serverile IMAP APPEND kaudu, säilitamata algset INTERNALDATE'i. Iga sõnum saab seega operatsiooni hetke ajatempli.

imapsync ja käsitsi migratsioonid cPanelist

imapsync on võimas tööriist, kuid selle vaikekäitumine ei säilita alati kuupäevi. Ilma õigete parameetriteta (ja õige versioonita) võib see kopeerida 40 000 sõnumit, määrates neile kõigile skripti käivitamise kuupäeva. (Muide, kui oled kunagi rida-realt imapsync'i logikirjeid läbi vaadanud, et diagnoosida kuupäevaprobleemi 25 000 sõnumiga postkastis, tead et see on kogemus, mida ei taha korrata.)

Täpsemalt öeldes on imapsync'il kuupäevade säilitamise katseks võimalused olemas, kuid need interakteeruvad lähtekohta ja sihtserverit sõltuvalt erinevalt ning nende tõhusus ei ole kõigis cPanel / Dovecot konfiguratsioonides tagatud.

GSMMO ja tarbijapõhised tööriistad

Google Workspace Migration for Microsoft Outlook (GSMMO) on mõeldud Outlookist migreerimiseks, mitte paljast IMAP-serverist. Kui seda kasutatakse cPanelist migreerimiseks (Outlookis seadistatud IMAP-konto kaudu), kogevad kuupäevad sama käitlust: Google Workspace'i INTERNALDATE seatakse migratsioonikuupäevale. GSMMO kuupäevaprobleemi kohta on eraldi dokumentatsioon, niivõrd laialt on see levinud.

Milliseid meiliklientid on mõjutatud?

Kuupäevade riknemine ei avaldu kõigil klientidel ühtmoodi.

Outlook on enim mõjutatud klient. See kasutab INTERNALDATE'i (või migratsioonist pärinevat Received: päist) kaustade peamise sorteerimiskriteeriumi. Pärast halvasti teostatud cPaneli migratsiooni võib Outlooki postkast kuvada tuhandeid arhiveeritud e-kirju migratsiooninädalavahetuse kuupäevaga. imapsync kuupäevade parandamine Outlookis on üks enim nõutud parandusi.

Gmail (Google Workspace) kuvab tavaliselt e-kirjade loendis Date: päisest pärineva kuupäeva, kuid sortimine võib siiski INTERNALDATE'ist sõltuvalt mõjutada. Kasutajad teatavad ebaregulaarsest käitumisest kuupäeva järgi otsimisel ja sorteerimisel.

Apple Mail ja Thunderbird käituvad nüansseeritumalt, kuid kumbki ei ole probleemi eest kaitstud, eriti kui migratsioonist pärinev Received: päis on ahela ülaosas.

Hea uudis: algne kuupäev on alles

See on tehniline detail, mis muudab kõike. Sõnumi algne Date: päis on kirjutatud e-kirja toorkorpusesse. Migratsioon seda ei puutu. Kui avad mõjutatud e-kirja ja vaatad toorpäiseid (Gmailis: "Kuva originaal", Outlookis: Fail > Atribuudid), näed algset Date: päist puutumatult, millele järgnevad üks või mitu Received: päist, millest esimene kannab migratsioonikuupäeva.

See teave on alati kohal. Seda saab kasutada metaandmete parandamiseks. Täpselt seda teeb Redate.io parandusmotor.

Miks "ise parandamine" on riskantsem, kui paistab

Kiusatus on suur. Probleem tundub lihtne: loe algne kuupäev, paranda metaandmed, mine edasi. Kuid mehhanismi mõistmise ja 12 000 tootmise e-kirja kaotuseta parandamise vahel on tohutu lõhe.

Mõned reaalsused, mida kodused skriptid tavaliselt ette ei näe:

  • S/MIME allkirjastatud või PGP krüpteeritud e-kirjad: igasugune sõnumi struktuuri muutmine tühistab krüptograafilise allkirja. E-kiri, mis läbis allkirjakontrolli enne parandust, ei pruugi seda pärast enam teha. Regulatiivse vastavuse kasutajad (advokaadibürood, finantssektori, tervishoiu töötajad) avastavad selle probleemi kõige ebasobivamatel hetkedel.
  • Mitte-ASCII päised ja RFC 2047 kodeering: cPaneli postkastid koguvad aastate jooksul e-kirju väga erinevatest meiliklientidest. Mõned päised sisaldavad RFC 2047 järgi kodeeritud märke. Halvasti kirjutatud skript, mis ehitab päiseid ümber, võib need kodeeringud nähtamatult rikkuda.
  • Pesastatud MIME struktuurid: kolme manuse ja alternatiivse HTML-sisuga e-kirjal on keeruline multipart-struktuur. Väikseim viga MIME piiridel muudab sõnumi loetamatuks või, mis veelgi hullem, manused kaovad ilma veateadet andmata.
  • API kvoodid ja kiiruspiirangud: Google Workspace ja Microsoft 365 kehtestavad ranged piirangud IMAP-operatsioonide arvule minutis. Skript, mis ei rakenda korralikult eksponentsiaalset mahajäämist, käivitab kell 3 öösel 429 vigu ja ärkad pooleli oleva migratsiooniga, teadmata täpselt, kus see seiskus.
  • Tagasipöördumine on võimatu: kui midagi läheb poole peal valesti, millisesse olekusse sa naased? Kas originaalid on veel alles? Kas sul on duplikaate? Redate.io hoiab originaalid nähtavas varukoopiate kaustas 30 päeva jooksul, täpselt selleks, et sellisesse olukorda mitte sattuda.

Skript, mis töötab 50 testmeiliga arenduskeskkonnas, ei pruugi töötada 18 000 sõnumiga tootmispostkastil, mis on pärit 2011. aastast cPaneli hostingust.

Kuidas Redate.io parandab kuupäevad pärast cPaneli migratsiooni

Redate.io ühendub otse sihtpostkastiga (Google Workspace domeenidelegatsiooni kaudu, Microsoft 365 Azure AD kaudu või otse IMAP-serveriga) ja alustab tasuta skaneerimisega, et tuvastada e-kirjad, mille kuupäeva metaandmed ei ühti algse Date: päisega.

Mitmeastmeline analüüsipipeline rakendab seejärel mustrite sobitamist Received: päiste signatuuridel, et tuvastada migratsioonitööriistade lisatud päised (ja eristada neid legitiimsetest päistest). Sihipärane metaandmete parandamine toimub sõnumi sisu muutmata: tekst, manused, algsed päised jäävad kõik puutumatuks. Iga parandatud e-kiri kontrollitakse individuaalselt enne operatsiooni kinnitamist.

cPaneli migratsioonide puhul tunneb mootor ära Dovecot-to-IMAP migratsioonide ja imapsync skriptide tüüpilised signatuurid, sealhulgas Euroopa jagatud hostingupakkujate tavalised konfiguratsioonivariandid.

Spetsiifilised juhendid vastavalt sihtkohale

Sõltuvalt sinu cPaneli migratsiooni sihtplatvormist kirjeldavad järgmised juhendid täpseid samme:

Migreerisid cPanelist ja kasutajad näevad valesid kuupäevi? Käivita tasuta skannimine Redate.io-s, et tuvastada täpselt, kui palju e-kirju on mõjutatud, ilma et midagi muudetaks enne sinu nõusolekut.

Seotud artiklid