Cómo migrar correos electrónicos paso a paso usando IMAPSync en macOS

3–5 minutos

Lectura

·

Migrar correos electrónicos de un servidor a otro puede parecer complicado, pero con las herramientas adecuadas se vuelve un proceso seguro y rápido. En este artículo, te enseñamos cómo hacerlo utilizando IMAPSync y Homebrew en macOS.

1. Requisitos previos

Antes de comenzar, asegúrate de contar con:

  • macOS con Homebrew instalado: Homebrew es un gestor de paquetes que permite instalar IMAPSync fácilmente desde la terminal.
  • Acceso a ambas cuentas de correo (origen y destino): Necesitarás usuario y contraseña de cada cuenta.
  • Credenciales de usuario y contraseña: Para la cuenta origen y la cuenta destino.
  • IMAP habilitado en ambas cuentas: IMAP debe estar activo y permitir conexiones desde aplicaciones externas como IMAPSync.
  • Contraseñas de aplicación (si usas autenticación de dos factores):
    • Muchas cuentas modernas (como Gmail, Outlook, etc.) usan autenticación de dos factores (2FA) para mayor seguridad.
    • En estos casos, tu contraseña normal no funcionará en aplicaciones externas que no pueden pedir el segundo factor.
    • La solución es generar una contraseña de aplicación especial en tu proveedor de correo. Esta contraseña se usa únicamente en IMAPSync y otras aplicaciones externas, sin comprometer tu contraseña principal.

2. Instalar IMAPSync

Abre la Terminal y ejecuta:

brew install imapsync

Esto instalará la herramienta junto con todas sus dependencias.

3. Verificar servidores IMAP

Antes de migrar, asegúrate de que ambos servidores IMAP estén activos. Para servidores con SSL/TLS en puerto 993, ejecuta:

openssl s_client -connect imap.dominio.com:993

Si la conexión es correcta, verás un mensaje de bienvenida del servidor, confirmando que IMAP funciona.

4. Migrar un correo individual

El comando básico para migrar un buzón es:

imapsync \
  --host1 imap.origen.com --user1 usuario@dominio.com --password1 'XXXXXXX' --ssl1 \
  --host2 imap.destino.com --user2 usuario@dominio.com --password2 'XXXXXXX' --ssl2 \
  --all --automap --addheader --useuid --syncinternaldates \
>   --errorsmax 500 --skipsize --nofoldersizes \

Este comando copiará todos los correos de la cuenta origen a la cuenta destino preservando la estructura de carpetas.

Explicación de los parámetros principales

  • --host1: servidor de correo origen (de donde vas a copiar los correos).
  • --user1: usuario de la cuenta origen.
  • --password1: contraseña de la cuenta origen.
  • --ssl1: indica que la conexión al servidor origen usa SSL/TLS.
  • --host2: servidor de correo destino (donde se copiarán los correos).
  • --user2: usuario de la cuenta destino.
  • --password2: contraseña de la cuenta destino.
  • --ssl2: indica que la conexión al servidor destino usa SSL/TLS.

Para excluir carpetas usa: –exclude ‘Spam|Trash|Junk’

5. Migrar varias cuentas

Si tienes varias cuentas, puedes automatizar el proceso directamente en la terminal usando un bucle for:

for cuenta in \
"admin@dominio.com|XXXXXXX" \
"maria@dominio.com|XXXXXXX" \
"pedro@dominio.com|XXXXXXX"
do
  IFS="|" read -r usuario pass <<< "$cuenta"
  echo "Migrando $usuario ..."
  imapsync \
    --host1 imap.origen.com --user1 "$usuario" --password1 "$pass" --ssl1 \
    --host2 imap.destino.com --user2 "$usuario" --password2 "$pass" --ssl2 \
    --all --automap --addheader --useuid --syncinternaldates \
>   --errorsmax 500 --skipsize --nofoldersizes \
done

Con este método puedes migrar una sola cuenta o varias sin necesidad de crear archivos externos. Solo agregas o quitas cuentas del listado del bucle según lo necesites.

6. Migrar correos por rango de fechas

Si solo deseas sincronizar mensajes de una cierta antigüedad (por ejemplo, correos más recientes de los últimos 30 días), imapsync permite usar filtros de edad. Además, puedes decidir en qué folder aplicarlos (por ejemplo: INBOX, Sent, Drafts, Junk, Trash, o cualquier carpeta personalizada que tengas en el buzón).

imapsync \
  --host1 imap.origen.com --user1 "usuario@dominio.com" --password1 'XXXXXXX' --ssl1 \
  --host2 imap.destino.com --user2 "usuario@dominio.com" --password2 'XXXXXXX' --ssl2 \
  --folder "INBOX" \
  --minage 30 \
  --syncinternaldates --useuid --addheader \
  --errorsmax 200 --skipsize

Parámetros clave:

  • --minage 30 → migra solo correos con más de 30 días de antigüedad.
  • --maxage 90 → (opcional) migra solo correos con menos de 90 días.
  • --folder "INBOX" → aplica el filtro a una carpeta específica. Puedes usar varias veces --folder para incluir diferentes carpetas (ejemplo: --folder "Sent").

De esta manera, puedes dividir la migración en bloques por fechas y también por carpetas específicas según lo que necesites transferir.

7. Consejos para una migración exitosa

  1. Haz una prueba primero usando el parámetro --dry para simular la migración sin copiar mensajes.
  2. Verifica conexiones a los servidores IMAP antes de iniciar.
  3. Mantén las fechas originales con --syncinternaldates.
  4. Monitorea la velocidad y divide la migración en bloques si tienes muchas cuentas o mucho volumen de correos.

8. Estimación de tiempo

  • Para cuentas de hasta 2 GB de correo, la migración suele tardar entre 15 minutos y 1 hora, dependiendo de la velocidad de internet y la carga del servidor.
  • Cuentas con muchos emails pequeños o archivos adjuntos grandes pueden tardar más.

Conclusión

Migrar correos electrónicos con IMAPSync en macOS es sencillo si se siguen los pasos correctos. La clave está en verificar los servidores, usar SSL/TLS, y automatizar múltiples cuentas con bucles en la terminal. Con esto, tu transición de un proveedor a otro será rápida y segura.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

La parte de la plantilla ha sido borrada o no está disponible: offcanvas-nav