Мигриране на имейл: как без пробреми да се преместите от един сървър на друг

Темата, посочена в заглавието, може да изглежда неактуална за уважаваните хабровчани, но понякога е просто необходимо да се повдигне. Фактът е, че работя вече много години като администратор в научен институт в хуманитарната сфера, където служителите разполагат с такава квалификация в областта на съвременните информационни технологии, че прословутата счетоводна служба от вицовете за IT специалистите на този фон изглежда като събрание на философи, посветени на всички тайни на битието. Уважаемите учени успяват да въвеждат имена на сървъри на пощата с руски букви, вместо знак „@“ пишат в скобки „собачка“ (а после твърдят, че така е написан в полученото им имейл-адрес), опитват се да изпратят поща на WhatsApp с помощта на The Bat! и правят още куп странни неща, често в едно и също съобщение. Ученето им е безполезно, борбата с тях е невъзможна; остава да приемем своята съдба и да автоматизираме максимално всички операции, свързани с коригирането на техните грешки.

Една от най-зловещите и опасни операции в практиката ми се оказа миграцията на уеб поща от сървър на сървър. Фактът е, че служителите в института имат цели три служебни пощи: едната включва вътрешния Exchange сървър, другата работи на Mail.ru, а третата — на Gmail. Не, не съм аз идиот, и дори не са те. Това е нареждане на дирекцията, свързано с някакви ведомствени игри. Нещо трябва да остане вътре в института на „корпоративния“ сървър, нещо, свързано с заявления и грантове, непременно трябва да минава през руската поща, а пощата на Gmail е свързана за моите уважавани колеги с такива, безусловно, необходими неща, като документи и таблици в Google, бекъп на диск и т.н. Проблемът е само в това, че както знаем, при седем баби детето без око — т.е. в този случай, между трите пощенски сървъра, моите колеги по най-безапелационен начин успяват да загубят най-важните писма!

Има и още един проблем, който често налага необходимостта от миграция на имейли. Съвременните имейл услуги често позволяват автоматично пренасочване на съобщения от един сървър на друг, тоест събиране на имейли. И потребител, свикнал с това, че съобщенията му на сървъра, да речем, Mail.ru, автоматично се копират в пощата на Яндекс, понякога забравя в крайна сметка, че по този начин получава достъп не до всички съобщения, а само до тези, които са получени след настрояване на събирането на имейли. Следователно, може да се появи естествено желание да се извърши пълна миграция на имейлите от стария сървър на новия, по-често използвания, а към кого ще се обърне с това желание? Правилно: към най-близкия системен администратор!

Мисля, че подобна ситуация възниква и при всеки, който така или иначе е принуден да има няколко имейл акаунта, особено ако ги администрира, или просто иска да премине от сървър на сървър без загуба на важна информация. Разбира се, ИТ-експертите ще решат този проблем с лекота с два клика на мишката, но ако вие не сте опитни в тези дела, миграцията на електронната поща може да се превърне в сложна задача за вас. Затова реших накратко да споделя опита си как без проблем да извършите експортиране на имейли в някакво хранилище и последващото импортиране на пощата на друг сървър. Може би на някого тази операция ще помогне да се избави от малки неуспехи или просто да улесни живота!

Експорт на имейли: малко теория, малко практика

По принцип, пощенските сървъри работят с клиентските програми чрез един от двата протокола: POP3 или IMAP. Ако тези наименования не ви говорят нищо (както понякога се случва?), ще се опитам да обясня с прости думи: протоколът POP3 изтегля писмата от сървъра на вашия компютър, докато протоколът IMAP ги обработва директно на сървъра. Старите пощенски клиенти по подразбиране работеха (и продължават да работят) с протокола POP3, изтегляйки пощенските съобщения в специално определена папка за клиента (обикновено тя се намира някъде в каталога на потребителя, сред скритите по подразбиране папки с данни от приложения). Протоколът IMAP е по-съвременен, и с него също може да се извърши внос на писма в локално или мрежово хранилище. Така че въпросът всъщност не е как да изтеглите нужните писма, а как да ги предадете на нужния сървър за извършване на миграция на пощата. Най-простият вариант е да се използва протоколът IMAP, да се копират всички писма по него в някакво хранилище във формат EML и след това да се качат в друга папка на друг акаунт, ползвайки факта, че форматът на файловете с писма в общия случай е напълно еднакъв.

Как да го направите?

Простият метод, който ползвам с най-малко разходи, е миграцията на пощата с помощта на програма за копиране на данни, която поддържа протокола IMAP. Това се прави на два етапа.

  • Внос на поща от папка на сървъра в някакво хранилище във формат EML.
  • Износ на писмата в някаква друга папка на друг сървър по IMAP.

В този случай програмата за миграция на пощата от гледна точка и на двата сървъра се държи като обикновен IMAP-клиент. (Странно е, но повечето пощенски сървъри ще изискват от вас разрешение да използвате посочената програма като пощенски клиент, така че преди да извършите миграция на пощата с някакъв инструмент, задължително влезте в своя пощенски акаунт и разрешете на сървъра да използва този инструмент в списъка на достъпните клиенти по протокол IMAP). Такива програми обикновено изискват минимално ръчно настройки преди миграцията на електронната поща. Обикновено можете да настроите дори график за редовна автоматична миграция на пощата от сървър на сървър, ако това ви е нужно. Лично аз за износа на писма ползвам програмата Handy Backup, защото почти на всички машини имаме инсталирана, и изисква минимални настройки, които заедно се извършват от администраторската машина — не е необходимо да се движите до никъде. Но, по същество, използваният софтуер не е важен, стига да може да извършва внос и износ на поща директно на Уеб-сървър, и да поддържа единен формат за писмата на двата сървъра.

Ами Microsoft, както обикновено…

Отделна болка — миграцията на електронна поща от Exchange или Outlook (имам предвид не сървъра на Outlook.com, а клиента), тъй като Microsoft, както обикновено, поема нестандартен път. Добре, ако в тази ситуация имате под ръка специализирани софтуерни средства за експортиране на писма от Outlook или Exchange сървъри — тогава задачата се опростява до четенето на инструкциите за миграция на писма, управлявани от съответната програма. Добре е, че има доста много такива програми, както и специализирани плъгини за съответния софтуер, насочени към продуктите на Microsoft.

Миграция на електронна поща по POP3 протокол

Някои обичат да се занимават с нестандартни подходи, но в общия случай това не е така. Затова не прехвърляйте пощата от сървър на сървър по POP3 протокол, това е остаряло и неприлично. Превключете на IMAP на двата сървъра (как да го направите, има подробни инструкции почти при всеки доставчик), а след това направете всичко, както е описано по-горе (или поне използвайте инструмента за миграция, вграден в пощенската услуга — понякога има такива инструменти, въпреки че удобството им и логиката на работа обикновено оставят много да се желае). Може също да пробвате старомодния ръчен метод: с помощта на клиентска програма да прехвърлите писмата от папка в папка, или просто да ги изберете и изпратите на новия сървър. В миналото, когато бяхме малки, всички правехме именно така, и не ни се струваше неприлично, така че в безизходна ситуация може да опитате отново да се занимавате с подобна ръчна работа…

Като цяло, миграцията на електронна поща от един сървър на друг чрез последователен импорт на пощата в хранилището и след това экспорт на писмата на новия сървър по протокол IMAP отговаря на всички основни критерии за удобство при работа с програмите. Тези критерии включват ясна логика, сигурност, автоматизация и наличието на множество готови инструменти, които могат да свършат тази работа вместо вас. Надявам се, че това мое наблюдение ще бъде полезно за някого и ще улесни живота в случаите, когато счетоводството или планиращият отдел внезапно изискват да прехвърлят данните си от Яндекс на Mail.ru, от Гугъл на Yahoo! или където и да е другаде, където внезапно загриженият за разположението на пощата ръководител нареди. Не позволявайте да ви уморят, колеги!

Източник: habr.com

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster