Zimbra Open Source – Exportar / Importar buzones y mensajes

Como siempre en el mundo Open Source , todo funciona bien hasta que tiene que hacer una migración. Acabo de realizar una migración de un Zimbra 5 a una versión 8. El salto de versiones es muy importante por eso quería hacer v arias pruebas antes de lanzarme a hacerlo.

Después de varias pruebas he conseguido migrar todas las cuentas y todos los buzones. Os pongo los datos y los pasos que he seguido.

En el nuevo servidor, un Ubuntu 12.04 de 64bits virtualizado bajo Proxmox, se ha instalado la última versión disponible en estos momentos, 8.0.2. Y el antiguo servidor es un SUSE Linux Enterprise Server 10 con un Zimbra 5

1. – En la página inicial de la consola de administración del nuevo zimbra, haz click en “3. Migración y coexistencia

1

2. – En el asistente de importación que se abre, se pregunta que tipo de servidor se va a importar y si se van a importar cuentas y/o correos.

En nuestro caso vamos a elegir que el origen es un Zimbra y que vamos a importar tanto las cuentas como el correo.

2

3

3.- Al pulsar en Siguiente, podremos elegir si lo importamos desde un directior LDAP (o un Directorio Activo), desde un LDAP de Zimbra o bien un XML.

Vamos a elegir e LDAP de Zimbra.

4

4.- Ahora nos preguntará por las claves. Aqui me detengo un poco y explico.

En esta instalación la autenticación se hará mediante directorio activo, es decir, pongamos las claves que pongamos, cuando terminemos todo este proceso las claves serán las que tengan los usuarios en el AD.

Para esta instalación he puesto que la clave sea qwerty y que no cambien la contraseña.

5

5.- Ahora debemos decirle desde donde va a tener que coger los usuarios. Ponemos la IP del Zimbra antiguo, el DN de enlace, su Contraseña, el Filtro LDAP y la Base de búsqueda.

El DN de enlace la podemos sacar en el zimbra antiguo. Como usuario zimbra, ejecutamos el comando:

zimbra@correo:~$  zmlocalconfig -s zimbra_ldap_userdn

Y la contraseña, ejecutando el comando:

zimbra@correo:~$  zmlocalconfig -s zimbra_ldap_password

El filtro LDAP no hace falta que lo cambies.

En la Base de búsqueda debemos poner el dominio en su formato dc=dominio,dc=com

6

6.- Si hemos puesto todos los datos bien, nos mostrará la información encontrada en el antiguo Zimbra. Dominios encontrados, cuentas, etc…

7

7.- Al dar Siguiente comenzará la importación de las cuentas. SOLO de las cuentas, es decir, crea una cuenta de correo en el nuevo Zimbra con los datos del antiguo pero creará un buzón vacío. El correo se importará más tarde.

Si no nos da ningún error, nos aparecerá algo como esto.

8

8.- Ahora vamos a intentar (y digo bien, INTENTAR) importar los buzones. Pulsa en Siguiente y vamos a seleccionar las cuentas a importar.

9

9.- Si se pulsa sobre Buscar, aparecerá todas las cuentas en bloques de 50). Si tienes mas de 50 usuarios, una vez que los añadas a la ventana de la derecha, pulsa en el botón Siguiente para ver los siguientes 50. Así hasta que en la ventana de la derecha veas todos tus usuarios. En mi caso 200.

10

10.- Al pulsar siguiente nos preguntará las características del Zimbra origen, es decir, desde donde se va a importar.

Por defecto, conexión SSL.

IP y puerto IMAP Origen.

Usuario root y contraseña de root del Zimbra Origen.

11

11.- Si hemos puesto todos los datos bien, pasará a la siguiente pantalla, indicando que la tarea de importación ha comenzado.

12

12.- Podemos pulsar Finalizar ya que el proceso se seguirá haciendo en segundo plano.

Pasado el tiempo nos daremos cuenta que falla y no importa ningún buzón.

13

No nos preocupemos…. todo tiene solución en esta vida.

Ahora, la herramienta de migración zmztozmig se va a convertir en nuestro aliado para poder importar todos los mensajes.

Para editar este zmztozmig.conf del archivo:

# Vi /opt/zimbra/conf/zmztozmig.conf

Se debe cambiar los parámetros siguientes:

# Fuente ZCS servidor IP / nombre, nombre de usuario admin y la contraseña, puerto del servidor
SourceZCSServer=zcs1.example.com
SourceAdminUser=Admin
SourceAdminPwd=pwdpwd
SourceAdminPort=7071
  • SourceZCSServer: Servidor a migrar (Nombre o IP)
  • SourceAdminUser: usuario con permisos administrativos (generalmente Admin)
  • SourceAdminPwd: Contraseña
  • SourceAdminPort: 7071 (por defecto)
# Destino / Target ZCS servidor IP / nombre, nombre de usuario admin y la contraseña, puerto del servidor
TargetZCSServer=zcs2.example.com
TargetAdminUser=Admin
TargetAdminPwd=pwdpwd
TargetAdminPort=7071
  • TargetZCSServer: Nuevo_servidor (Nombre o IP)
  • TargetAdminUser: usuario con permisos administrativos (generalmente Admin)
  • TargetAdminPwd: Contraseña
  • TargetAdminPort: 7071 (por defecto)
# Tareas a ejecutar simultáneamente
Threads=1

Número de procesos que se ejecutan simultáneamente. Como no tengo prisa y, sobre todo, quiero que termine bien, y no son demasiadas cuentas, voy a poner que las haga de una en una.

# ¿Quieres guardar archivos tar con éxito la migración de buzones después-VERDADERO / FALSO
KeepSuccessFiles=TRUE

Esta opción le permite guardar una copia de cada cuenta (en un archivo comprimido .tgz), en la ruta

SuccessDirectory = /tmp/ztozmig/success/

Si no quieres guardar estos archivos después de la importación, lógicamente , cambia el parámetro anterior a “FALSE”.

Si se va a cambiar el dominio de correo a uno nuevo, tendrás que cambiar las siguientes líneas. Si no hay cambio de dominio, y solo cambio de servidor -como es mi caso actual-, TIENES QUE COMENTAR estas líneas y pasar al parámetro Cuentas.

# Resolver=saltar
DomainMap=zcs1.example.com zcs2.example.com

Esta línea debe tener el dominio Origen, seguido del dominio Destino. Es decir, si pasamos de un dominio  dominio.com a  otro cambiado.com, pondremos:

DomainMap=dominio.com cambiado.com

Ahora debemos especificar que cuentas se van a importar.

Tenemos 2 opciones. O migrar todas o especificar las cuentas que queramos. En el primer caso, pondremos ALL, y si no, pondremos todas las cuentas en una solo línea separadas por comas. En caso de poner Cuentas=ALL tendremos que utilizar por narices la opción anterior (DomainMap)

Cuentas=ALL

o bien,

Cuentas=cuenta1@dominio.com,cuenta2@dominio.com,cuenta3@dominio.com,......

En mi caso, han sido casi 200 cuentas por lo que he puesto todas las cuentas separadas por comas.

Con todos los parámetros modificados, podemos iniciar la importación.

Con el usuario zimbra (su – zimbra), ejecute el script:

$ /opt/zimbra/libexec/zmztozmig -f /opt/zimbra/conf/zmztozmig.conf

Después de importar  se muestra el número de cuentas de servidor, el número de cuentas importadas con éxito, el número de cuentas con el fracaso y la duración de la importación.

Bueno, eso es todo.  Espero que pueda ayudar a alguien más.

:wq

Anuncios

48 comentarios en “Zimbra Open Source – Exportar / Importar buzones y mensajes

  1. Saludos Compañero, buen aporte; pero me gustaría consultarte un problema que se me esta presentando en el paso 5 cuando coloco los datos del LDAP; me manda un error desconocido (Mensaje: LDAP error: – unable to get connection: invalid credentials Código de error: ldap.LDAP_ERROR Method: [unknown] Detalles:soap:Receiver) es como si no conectara a mi servidor LDAP; tienes alguna pista que podra ser???

    Saludos y Gracias

    Responder
    • En la URL de LDAP, pon la IP del equipo con el LDAP (puerto 389 por defecto)
      En DN de Enlace, pon: cn=Manager,dc=dominio,dc=com (cambia el dominio por el tuyo….)
      En Contraseña, la ontraseña del usuario Manager del LDAP
      En Filtro LDAP, escribe (objectClass=organizationalPerson)
      En Base de búsqueda de LDAP, pon la Unidad organizativa con el formato: ou=unidadorgan,dc=dominio,dc=com

      Responder
  2. Buenas hermano, tengo un detalle en el paso 5, me arroja este mensaje ” Mensaje: LDAP error: – unable to get connection: An error occurred while attempting to connect to server xx.xx.xx.xx:389: java.io.IOException: An error occurred while attempting to establish a connection to server xx.xx.xx.xx:389: java.net.ConnectException: Connection refused Código de error: ldap.LDAP_ERROR Method: [unknown] Detalles:soap:Receiver “…. Tengo un ldap de zimbra.

    Saludos y Gracias

    Responder
  3. Hola, ojala me puedas ayudar, lo que explicas aqui solo migra los correos que se encuentran en bandeja de entrada y enviados, crea toda la estructura de carpeta que se hayan creado en la cuenta, por ejemplo correos personales, trabajo, etc. Pero no migra los correos en esas carpetas, sabes como puedo hacer para que lo haga ???

    Gracias

    Responder
  4. Hola, tengo 10,000 cuentas al hacer ALL me pide que ponga el nombre del dominio por narices ¡a que te refieres¡ puedes poner un ejemplo, solo eso me falta, saludos
    Jean

    Responder
    • Vas cambiar el dominio? O va a ser el mismo?
      Para poder poner ALL en Accounts, tienes que especificar los campos

      DomainMap=zcs1.example.com zcs2.example.com

      Es decir, si quieres pasar todas las cuentas de un dominio correo.primero.com a un dominio correo.segundo.com, mediante el parámetro ALL, deberás poner

      DomainMap=correo.primero.com correo.segundo.com

      Si no hay cambio de dominio, puedes poner el mismo dominio.

      DomainMap=correo.primero.com correo.primero.com

      Responder
    • Si te soy sincero no he probado nunca la opción ALL sin cambiar de dominio…. pero me imagino que si pones el mismo dominio en DomainMap como te pongo arriba, no habrá problemas.

      Responder
  5. Excelente aporte, he buscado en varios sitios algo para realizar esta migración; sin embargo cuando llego al punto # 5 me aparece el siguiente mensaje Mensaje: LDAP error: – unable to get connection: An error occurred while attempting to connect to server X.X.X.X:389: java.io.IOException: Unable to establish a connection to server X.X.X.X:389 within the configured timeout of 30000 milliseconds. Código de error: ldap.LDAP_ERROR Method: [unknown] Detalles:soap:Receiver.
    Utilice las sugerencias que distes a los demas pero me continua apareciendo el mismo mensaje.

    Puedes colaborame,

    De antemano Gracias

    Responder
    • Hola Ariel,
      Te digo lo mismo que le dije a otro con errores de conexión al LDAP. Primero comprueba que el LDAP está funcionando, que el firewall no tiene el puerto cerrado (que permite conexiones) y que puedes hacer un telnet desde la máquina Zimbra al 389 del equipo con el LDAP.
      Ya me dirás.

      Responder
  6. Felicitaciones por este post, muy bueno y me esta sirviendo bastante. desde ya muchas gracias.

    Me voy a la respuesta le hiciste a Jean Calderon, es que se paso agregar en la lista de dominios el dominio que estas importando, que es necesario para la migracion de las cuentas cuando lo haces con el parametro all.

    Responder
  7. A mi lo que no me migro fueron los correos.
    Me migro los usuarios, no me dio error despues de configurar el conf pero no me migro los correos.

    SAludos

    Responder
  8. bueno e verificado varios temas con zmztomig y hay un detalle …. para que migre de manera correcta los elementos compartidos, etiquetas etc los id de las cuentas en el servidor antiguo con el actual deben ser las mismas …. dado que no se puede modificar
    el id de la cuenta cuando ya esta creada entonces al momento de crear la cuenta se le debe asignar el mismo id del servidor de origen….

    Responder
  9. Muchas gracias, excelente, pero en el asunto de las contraseñas, entiendo que este procedimiento conserva las contraseñas del antiguo servidor, sin embargo al realizar la migración no fue así. La contraseña quedó establecida como se especificó en el paso 4, y como no activé la casilla “solicitar que los usuarios cambien…” tuve que activar manualmente el cambio de contraseña obligatorio ( for each in `zmprov -l gaa`; do zmprov ma $each zimbraPasswordMustChange TRUE; done ). Por lo demás, ahorra un montón de tiempo, excelente, gracias.

    Responder
    • Mauricio, me alegro que te ayudase esta entrada.
      En cuanto a lo de las contraseñas, realmente puse qwerty y no activé la casilla de “solicitar que los usuarios cambien…” pero por la sencilla razón de que luego puse la validación por AD. Con lo cual, la clave de Zimbra va a ser la misma que la que tengan en el AD.
      Igual me expliqué mal en la entrada pero la finalidad era esa. Que en el Zimbra que tengan la misma clave que en el AD.
      :q

      Responder
  10. Muchas gracias, funcionó a la perfección… Tuve travas al querer conectar al LDAP pero siempre era porque tenia el puerto cerrado, o mal los datos de login, e incluso la base de busqueda… en mi caso era “dn=ar” ya que todas las cuentas son de dominio “.com.ar” de argentina. Muy buen año! Hasta la prox.

    Responder
    • Deberías

      En el fichero /opt/zimbra/conf/zmztozmig.conf tienes la opción de cambiar de servidor pero manteniendo el mismo dominio, o bien de cambiar de dominio, como entiendo que es tu caso.

      En el apartado de DomainMap, comenta la primera línea y modifica la segunda con tu caso:

      #DomainMap=zcs1.example.com zcs2.example.com
      DomainMap=dominioviejo.com dominionuevo.com

      Con esto únicamente te cambia el dominio pero manteniendote las cuentas del viejo.
      Recuerda también que tienes que especificar las cuentas que quieres migrar. O pones el parámetro ALL o le pones todas y cada una de las direcciones con su dominio correspondiente.

      Responder
  11. Hola saludos, esa parte la entiendo perfectamente mi pana, el asunto esta antes de migrar los buzones, cuando inicio el asistente de migración y coexistencia para las cuentas solamente, al hacerlo de un dominio existente a mi nuevo dominio, todo sale a la perfección, solo que las cuentas no las crea con el dominio nuevo, sino con el dominio viejo, cuando voy a administrar las cuentas en el nuevo dominio, resulta que están todas y cada una de las cuentas pero con el @dominioviejo.com y no con el @dominionuevo.com

    Responder
  12. una consulta, yo estoy haciendo migracion de Zimbra a Zimbra, y me funciona, pero en el paso 4 puse una clave y esa fue la que el puso en el nuevo server, como hago para que mantenga las mismas claves que el servidor viejo??

    Gracias

    Responder
  13. Buenas tardes, necesito una ayuda por favor, me aperecia un mensaje que actualicé mi zimbra v 8, procedí a actualizarla, pero ahora me ingreso como administrador y no e aparece la opción de cambiar la contraseña de las cuentas de correo… como puedo solucionarlo, que tengo que hacer por favor.
    Gracias…

    Responder
  14. Santiago, seguramente tengas autenticación mediante directorio activo. Por eso no te deja cambiar las claves.
    Tendrías que cambiarla en el directorio activo y después resincronizar Zimbra con el AD.

    Responder
  15. Felicitaciones al creador de este excelente documento, no tuve ningun inconveniente en la migracion de mi servidor.

    La unica consulta que tengo es como se comportan las cuentas que tenia como spam training, non-spam account training, wiki, y administradores.

    Hay que borrarlas? Ya que zcs 8.6 no las crea o no las veo como en mi viejo sistema zcs 6.0

    Espero haber sido lo bastante claro.
    Saludos

    Responder
    • Hola Ricardo y gracias por tu comentario.
      Efectivamente desde la versión 8 no aparece en el listado de cuentas ni la de Spam ni la de Virus.
      Existen pero tienes que buscarlas desde el buscador de cuentas. Dentro de la administración de cuentas, tienes un buscador. Utilizalo y aparecerán 🙂

      Un saludo y gracias

      Responder
  16. Excelente ayuda para la migración gracias.

    Tengo una duda luego de realizar la migración en que ruta del nuevo servidor puedo encontrar las cuentas que fueron migradas?
    Un saludo y gracias

    Responder
  17. Amigo ya puedo ver las cuentas en el administrador del nuevo servidor, pero no se migraron los buzones de correo, puedes ayudarme con esto?

    Responder
  18. No soy experto en zimbra pero dejo mi aporte por si a alguien le sirve pues he tenido varios dolores de cabeza ‘intentando’ migrar zimbra, y al final he usado la herramienta de zextras mig de zimbra que hace la exportación y importación automaticamente, se instala en un servidor y luego en el otro y ya; migre todas las cuentas de una vez manteniendo integra la estructura de carpetas y tambien las configuraciones de las cuentas. bueno este es mi aporte espero que les sirva.

    Responder
  19. Excelente aportacion ing.

    pero tengo una pregunta ya pase las cuentas de un dominio, pero en zimbra 7 tenia 5 dominios, ahora como hago para pasar las cuentas y los correos de los otros dominios. ya los cree en zimbra 8 los otros dominios.

    al iniciar a pasar las cuentas

    me sale este mensaje
    Server error encountered
    Message: system failure: unable to search gal Error code: service.FAILURE Method: [unknown] Details:soap:Receiver

    espero me pueda apoyar

    gracias

    Responder
  20. Hola, espero no distaerte de tus actividades, tengo una duda:
    Del apartado #4, cómo puedo mantener las contraseñas originales que tienes los usuarios del servidor Zimbra?
    gracias

    Responder
    • La validación de Zimbra se hace contra un Directorio Activo? Si es así, no tienes problema, ya que las claves van a ser las que cada usuario tenga en ese mismo directorio activo.
      Para la migración aquí expuesta se usa una clave temporal (igual para todos) qwerty, pero una vez terminado el proceso, cada usuario vuelve a tener su clave original del directorio Activo.

      Responder
  21. Hola buenas tardes, primero que nada agradecerte por el tutorial muy bueno. Mi consulta es la siguiente llego al paso 5 (tengo un ldap externo) me conecto al ldap (esto creo que se produce ya que no da error) pero al pasar a la siguiente pantalla me dice 0 dominio, 0 cuentas como si no tuviese nada para importar para el filtro y la base LDAP use los mismos que utilizo para la configuración de autenticación. Por favor si se te ocurre algo que pueda revisar te lo voy agradecer. Saludos

    Responder

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s