Pular para o conteúdo principal

Migração do servidor de email zimbra para um servidor de emails Exchange, utilizando o imapsync

Esses dias, fomos incumbidos da tarefa de realizar a migração de um servidor de emails zimbra 8.0 para uma estrutura Exchange 2013 da Microsoft. O motivo para a migração são muitos, mas basicamente realizamos essa migração por conta do Backup. É que a ferramenta de backup que possuímos só possui agente para a ferramenta de emails da Microsoft (creio que é assim na grande maioria das ferramentas profissionais de backup), possibilitando a realização com êxito de backups  Full e incrementais de forma eficiente, e a restauração granular. Vencida essa etapa do porquê da migração, não encontramos facilmente uma resposta na internet ou algum tutorial completo sobre a migração de emails da ferramenta Zimbra para o Exchange, motivo pelo qual nos motivamos para escrever esse artigo.

Utilizamos para a migração a ferramenta Imapsync, instalada em um terceiro servidor (um CentOS 6.4)

Esse artigo considera como premissa que já tenhamos instalados os servidores Zimbra 8.0 e o Servidor Exchange 2013, e que as contas de emails já estejam criadas em ambos os servidores, o que é simples, se ambos usarem como fonte de usuários, o Active Directory.

  1. Primeiramente, no servidor zimbra vamos criar um arquivo de texto com todos os usuários do servidor Zimbra:
  2. esse arquivo vai se chamar contas_zimbra
  3. depois criar um script com o conteúdo abaixo que irá ler todas as contas do arquivo de texto acima e migrar conta por conta para o servidor exchange 2013.
  4. #!/bin/bash

  5. while read USER; do

  6. echo $USER

  7. imapsync --fast --nocheckselectable --subscribe --noauthmd5 --skipsize --syncinternaldates --host1 zimbra.dominio.br --host2 correio.dominio.br --password1 'senha_1' --password2 'senha_2' --skipheader ^Content-Type --user1 ${USER}@dominio.br --authuser1 usario@dominio.br --user2 'dominio/migra_zimbra/'${USER} --delete2duplicates --nofoldersizes --addheader --nolog --maxage 1825 --maxlinelength 9900 --maxsize 25000000

  8. echo $USER
  9. done < contas_zimbra


  10. No servidor exchange devemos ativar o serviço IMAP (vem desabilitado por padrão)
  11. Após, teremos que criar uma conta especial de nome "migra_zimbra" que terá acesso as caixas de emails no exchange 2013, apenas para a migração, depois esses direitos devem ser excluídos e a conta desativada.
  12. Depois vamos criar um script shell que fará a leitura desse arquivo, linha por linha e executará a migração dos emails, conta por conta para o servidor Exchange 2013
  13. Após basta subir o servidor de emails Exchange para produção, alterando o IP do mesmo para assumir o IP do antigo servidor Zimbra. 
  14. Depois dessa alteração com o servidor Exchange já em produção, realizamos uma última sincronização para levar os emails que foram entregues enquanto o servidor Zimbra estava sendo utilizado como principal (a migração inicial ainda não havia sido concluída), o bacana do imapsync é que ele levará apenas as diferenças entre a fonte e o destino dos dados, preservando os dados que porventura já existam no destino.
  15. é isso, espero que ajude alguém!!







Comentários

Postagens mais visitadas deste blog

Sincronização dos integrantes dos grupos do AD nos grupos do GLPI.

Estamos implantando em nosso ambiente computacional, uma ferramenta bastante interessante, chama-se GLPI, Entre as diversas funcionalidades, há a importação de grupos do AD da microsoft, autenticação e etc... Para minha surpresa, na versão 9.4.6, os grupos são importados, bem como os usuários, porém os integrantes dos grupos no GLPI, não são preenchidos, gerando um trabalho manual. Pesquisei bastante na internet, mas não achei nada pronto, então tive que construir meu próprio script shell para realizar tal tarefa, segue o script, que espero que ajude alguém: [root@localhost ~]# cat /scripts/atualiza_grupos.sh #!/bin/bash #script feito por Edcley Firmino em 04/08/2020 #faz a sincronização dos integrantes dos grupos do AD nos grupos correspondentes no GLPI mysql -u root -psenhamysqldoroot -e "select name, id from glpi.glpi_groups;" | while read name group_id; do if [ $name != "name" ] then #echo "$name ...$group_id" ldapsearch -x -D "usuarioparaglpi@se...