Transportar mensagens de email de um servidor para outro é simples usando o protocolo IMAP. Há algumas ferramentas para isso nos repositórios oficiais do Ubuntu e do Debian, como o “Imapcopy” e “Offlineimap”, mas uma que me agrada bastante por ter funcionado sem problemas no meu projeto de migração de servidor é o ImapSync. Abaixo segue o procedimento básico para instalar e usar.
Infelizmente a Canonical removeu este pacote da linha oficial então há duas maneiras de se instalar no Ubuntu. Uma é compilando a partir do fonte a outra é instalando uma versão antiga disponível no old-releases.ubuntu.com. Eu optei pelo segundo modo, mas para quem quiser usar o primeiro modo (que não é tão complicado assim) há um bom tutorial neste blog.
Instalando uma versão antiga do Imapsync
Antes de mais nada instale os pacotes abaixo em seu servidor
sudo aptitude install libdigest-hmac-perl libdigest-hmac-perl libterm-readkey-perl libterm-readkey-perl libdate-manip-perl libdate-manip-perl libmail-imapclient-perl
Agora baixe o Imapsync nos servidores da Canonical. Só para constar eu baixei o arquivo imapsync_1.315+dfsg-1_all.deb que era última versão disponível por lá.
Instale o pacote baixado
sudo dpkg -i imapsync_1.315+dfsg-1_all.deb
Agora execute o imapsync conforme a sua necessidade para transferir as mensagens de um servidor para outro. Consulte a ajuda do comando para obter mais detalhes sobre parâmetros que lhe serão uteis.
No exemplo abaixo eu copio as mensagens do usuario (login) “welington” no servidor mail.minhaempresa.com para a conta do usuário “welrbraga”, no servidor imap.novaempresa.net. Observe que o primeiro servidor não requer conexão SSL e o segundo sim.
imapsync \
--authmech1 PLAIN --user1 welington --password1 senhasecreta --host1 mail.minhaempresa.com \
--authmech2 PLAIN --ssl2 --user2 welrbraga --password2 senhamuitomaissenha --host2 imap.novaempresa.net
Ao termino do processo se tudo correr bem você terá uma cópia de todos os emails em ambos os servidores, mas você poderia também ordenar que as mensagens transferidas fossem excluídas do primeiro servidor, ou limitar um intervalo de datas para serem copiadas etc.
O básico é isso e espero que seja útil para você, como também me foi útil. Divirta-se!