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--folderpara 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
- Haz una prueba primero usando el parámetro
--drypara simular la migración sin copiar mensajes. - Verifica conexiones a los servidores IMAP antes de iniciar.
- Mantén las fechas originales con
--syncinternaldates. - 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.