Copia de seguridad IMAP, autoalojada
Restow copia cualquier buzón IMAP, en un servidor de correo propio o en un proveedor de alojamiento, por IMAP con TLS. Funciona en su propio servidor, lee cada carpeta de forma incremental, guarda cada mensaje byte a byte en el almacenamiento que usted elija y restaura el correo con IMAP append en la cuenta original o en otra cuenta IMAP, o como archivos .eml en un ZIP. Hoy inicia sesión con una contraseña, en uno de tres modos: un inicio de sesión compartido, una contraseña por buzón o un usuario maestro. OAuth2 para fuentes IMAP aún no está implementado; previsto. IMAP no transporta calendario ni contactos. La copia IMAP está en todas las ediciones, Community incluida, desde la 0.1.0.
Configurar una fuente IMAP
En las conexiones del inquilino, añada una fuente del tipo «Buzón IMAP» (IMAP mailbox). Usted introduce el servidor, el puerto y la seguridad, que es TLS (implícito, puerto 993) o STARTTLS (puerto 143); TLS es obligatorio salvo en desarrollo, y la opción «Ninguna» (None) es solo para un servidor de pruebas local. Introduce el usuario y la contraseña de la cuenta y prueba la conexión antes de guardarla: una prueba fallida nombra la causa (el servidor rechazó el usuario o la contraseña, el servidor rechazó el inicio de sesión por ahora, sin respuesta a tiempo, un acuerdo TLS fallido, sin STARTTLS en ese puerto, un nombre que no se resuelve, una conexión rechazada). La contraseña se sella con la clave del inquilino y no se vuelve a mostrar; donde el proveedor ofrece contraseñas de aplicación, son la mejor opción.
Un servidor IMAP no tiene un directorio del que leer las cuentas, así que usted añade las cuentas a mano o desde un archivo CSV (columnas login, name y email, más una password opcional) en «Directorio» (Directory), «Añadir cuentas» (Add accounts). Una contraseña del CSV se sella de inmediato y nunca se guarda ni se registra en claro. Una cuenta recién añadida recibe su primera copia en cola de inmediato, y un trabajo de copia del tipo «Correo y SaaS» (Mail & SaaS) cubre las cuentas IMAP junto con buzones y OneDrives.
Tres formas de iniciar sesión
Una fuente usa exactamente uno de estos modos, para todos sus buzones:
| Modo | Cómo funciona |
|---|---|
| Inicio de sesión compartido (Shared login) | El valor por defecto. Un usuario y una contraseña en la fuente sirven para todos los buzones que cuelgan de ella. Encaja con una contraseña de aplicación o con una cuenta de copia que su proveedor deja abrir todos los buzones. |
| Una contraseña por buzón (One password per mailbox) | Para proveedores en los que cada buzón tiene su propia contraseña y no hay cuenta maestra, como Hetzner, IONOS o all-inkl. La fuente en sí no tiene un inicio de sesión que probar: usted añade los buzones y usa después «Establecer contraseña» (Set password) y «Probar inicio de sesión» (Test sign-in) en cada uno en la pestaña Directorio. Un buzón sin una contraseña que funcione se muestra como «No protegido» (Not protected) y no se copia hasta que se establece una. |
| Usuario maestro (Master user) |
Una cuenta maestra inicia sesión como cada buzón, bien en la forma
master*buzón que usa Dovecot (el separador se puede cambiar), bien
como SASL PLAIN con un ID de autorización. Su servidor IMAP tiene que admitir
una de las dos. En la forma SASL, Restow comprueba que el servidor ofrece
AUTH=PLAIN y falla de forma visible si no, en lugar de copiar sin
avisar el buzón equivocado.
|
Una contraseña guardada nunca viaja a un servidor distinto de aquel para el que se selló. Si cambia el host o el puerto de una fuente con una contraseña por buzón, Restow descarta de inmediato la contraseña sellada de cada buzón, y cada uno muestra «No protegido» hasta que usted la establece de nuevo.
Qué servidores puede alcanzar Restow
Restow se conecta desde su propio servidor, tanto para la prueba de conexión como
para cada copia y cada restauración. Un administrador del inquilino solo puede, por
tanto, introducir servidores públicos: se rechazan el bucle local, las redes privadas
y los nombres locales (nombres de contenedor, .local,
.internal), al guardar la fuente y al conectar. Un servidor dentro de su
red es una decisión del operador: o bien para toda la instalación con un ajuste de la
instalación, o bien para una fuente por un administrador del proveedor que guarda el
host, lo que lo aprueba para esa fuente hasta que otra persona cambie su host o su
puerto. Las direcciones de enlace local (metadatos de la nube) nunca se permiten. El
servidor también tiene que ser accesible en el puerto que usted introduce; véase
red y puertos
(en inglés).
Microsoft 365 y Outlook.com han desactivado el inicio de sesión IMAP con usuario y contraseña. Restow avisa cuando usted introduce un host IMAP de Microsoft y le remite a una conexión de Microsoft 365, que copia los mismos buzones con Microsoft Graph (véase la visión general de copia de seguridad de Microsoft 365 e IMAP).
Cómo se ejecuta una copia
Restow lista las carpetas (LIST y LSUB, con las carpetas especiales reconocidas por
su marca SPECIAL-USE) y lee cada carpeta de forma incremental por su UIDVALIDITY y
su UIDNEXT. Cuando un servidor cambia el UIDVALIDITY de una carpeta, la carpeta se
vuelve a leer entera, y la deduplicación por Message-ID y hash evita que el
almacenamiento guarde el correo dos veces. Cada mensaje se obtiene con
BODY.PEEK[], que no marca el correo como leído, y se guarda byte a byte
como RFC 5322, con los flags guardados aparte y la fecha interna. El correo que se
eliminó en el servidor se reconoce en la siguiente ejecución comparando los UID, y los
puntos de restauración anteriores lo conservan.
Una copia usa como máximo dos conexiones por cuenta, porque muchos servidores las limitan. Todo se divide en fragmentos, se deduplica dentro del inquilino y se cifra (AES-256-GCM, una clave por inquilino) antes de llegar a su almacenamiento. Un mensaje que el servidor lista pero no entrega se comunica como advertencia con la causa, y un inicio de sesión fallido se nombra como tal, con lo que hay que hacer.
Desde la 0.4.7, un inicio de sesión que el servidor rechaza por ahora (demasiadas
conexiones abiertas para la cuenta, un sistema de autenticación caído o un código de
respuesta como [UNAVAILABLE], [INUSE] o [LIMIT]) ya no se toma por una contraseña
incorrecta. Es una causa transitoria, imap.server_limit, que Restow
reintenta por sí sola, y la prueba de conexión dice «El servidor rechazó el inicio de
sesión por ahora» (The server temporarily refused the login). Un límite de descarga
que el servidor comunica en una lectura ([LIMIT], [OVERQUOTA] o un texto de cuota) se
comunica también como imap.server_limit y no como buzón lleno: hace
fallar la carpeta entera y la siguiente ejecución continúa, en lugar de un fallo por
mensaje (un límite que el servidor comunica sin ese código ni ese texto sigue
costando un fallo por mensaje). Los mensajes borrados o movidos durante la copia no
cuentan como fallos. Una ejecución cuya conexión se cortó demasiadas veces falla como
imap.connection_lost, también una causa transitoria, en lugar de «No se
pudo identificar la causa» (The cause could not be identified).
Qué se copia y qué no
- Se copia: el correo de las carpetas de la cuenta, con flags y fechas, tal como lo entrega el servidor.
- No forma parte de IMAP: el calendario y los contactos.
- Los archivos de correo importados (EML, MSG, MBOX) no son una fuente IMAP y nunca se copian: se guardan como un buzón importado en el mismo formato, que usted explora y restaura como una cuenta IMAP (véase importación y exportación de correo).
Restauración
En el explorador de restauración una cuenta IMAP aparece con sus carpetas, búsqueda y vista previa del correo. Si la cuenta está asignada a una persona, figura bajo esa persona como «Correo (IMAP)» (Mail (IMAP)). Usted restaura un mensaje, una carpeta o una cuenta completa:
- La ubicación original u otra cuenta IMAP del mismo inquilino (el inicio de sesión del destino; se ofrece a operadores de restauración y administradores del inquilino). Restow añade el correo a la carpeta de destino con su fecha y sus flags originales y crea la carpeta si no existe.
- Descargar como ZIP con el correo como archivos .eml y una lista de sumas de comprobación, desde un enlace válido durante 24 horas, o una exportación como EML o MBOX.
Una restauración nunca sustituye un original. «Conservar ambos» (Keep both, el valor por defecto) lo deja todo en una carpeta nueva, y «Omitir los existentes» (Skip existing) deja el correo que ya está, reconocido por su Message-ID, y restaura solo lo que falta. No hay ningún modo que sobrescriba: la API lo rechaza para un destino IMAP, y en la cuenta de destino nunca se borra, sobrescribe ni mueve nada. Un usuario con el rol «user» ve y restaura solo sus propios datos; un administrador que restaura el correo de otra persona indica un motivo, y el registro de auditoría lo anota como hecho en nombre de esa persona.
Desde la 0.4.7, una restauración IMAP cuya conexión se corta falla y se reintenta en una conexión nueva, donde la comprobación del Message-ID omite lo que ya se había añadido, en lugar de terminar «completada» con todos los elementos restantes fallidos.
Restaurable con comprobación
Una comprobación de restauración, fijada en el trabajo de copia (semanal por defecto), relee una muestra aleatoria de mensajes del último punto de restauración por la vía de restauración y los compara con los hashes anotados en la copia; cada cuenta se valora en la «Preparación de recuperación» (Recovery readiness) junto a buzones y equipos. La comprobación que precede a cada versión publicada copia y restaura una cuenta IMAP y compara el correo byte a byte. Véase la página de verificación. Cada punto de restauración nuevo se juzga también en busca de señales de ransomware, por la cantidad de cambios y por la compresión y la deduplicación; véase la página de detección de ransomware.
Archivar una cuenta IMAP (Business y superiores)
Una copia de seguridad no es un archivo. Desde la 0.4.4, en Business y Service Provider, un trabajo de correo también puede archivar cuentas IMAP. Hay dos vías, que pueden funcionar juntas, y lo que captan ambas se archiva una sola vez. El «Archivado IMAP» (IMAP archiving) mantiene la cuenta sincronizada por IMAP y usa IMAP IDLE donde el servidor lo ofrece, y si no comprueba a intervalos; es cercano al momento y no es completo. El «Reenvío a la dirección de archivo» (Forwarding to the archive address) hace que el proveedor envíe una copia de cada correo entrante y saliente a una dirección de Restow (un mapa BCC de Postfix o mailcow, una regla Sieve), lo que capta el correo en el transporte. Con IDLE queda abierta una conexión por cuenta, y durante una pasada y una copia una cuenta puede usar hasta cuatro a la vez; para un proveedor con un límite justo, ponga la fuente en «Comprobar solo a intervalos» (Check at intervals only). Los detalles están en la página sobre cómo entra el correo en el archivo. Desde la 0.4.7, un mensaje que el servidor rechaza o no entrega ya no retiene su carpeta ni toda la pasada: los demás mensajes se captan, y tras tres pasadas la captura abandona ese mensaje, cosa que solo nombra el registro del worker, no la interfaz. Una carpeta rechazada cuesta solo esa carpeta en esa pasada, las carpetas que una pasada no alcanzó conservan su estado (el correo más antiguo ya no se omite tras una pasada interrumpida), y un límite de la cuenta detiene la pasada con su estado conservado. Una vigilancia que el servidor rechaza con un NO en EXAMINE o en IDLE se reintenta al cabo de minutos (el intervalo se duplica hasta una hora), en lugar de tomar el servidor por uno sin IDLE durante un día. El archivado IMAP se probó con un servidor IMAP simulado y el Dovecot de las comprobaciones de la versión, y el reenvío con el propio receptor, no con un proveedor real, Postfix, mailcow ni Google Workspace.
Límites declarados, no ocultos
- Las fuentes IMAP inician sesión solo con una contraseña. OAuth2 para fuentes IMAP aún no está implementado; previsto. Restow no crea contraseñas de aplicación ni las pide.
- Los buzones de Microsoft 365 y Outlook.com no se pueden copiar por IMAP con una contraseña; use una conexión de Microsoft 365.
- Sin calendario ni contactos: IMAP transporta solo correo.
- Un administrador del inquilino solo puede conectar servidores públicos; un servidor en una red privada necesita la decisión del operador.
- Un buzón sin una contraseña que funcione, en el modo «Una contraseña por buzón», no se copia hasta que se establece una y se prueba.
- Una copia usa hasta dos conexiones por cuenta; el archivado con IMAP IDLE mantiene una más abierta. Téngalo en cuenta frente al límite de su proveedor.
- El archivado IMAP es cercano al momento y no es completo, y solo se probó con servicios simulados (véase arriba). Restow es una beta: úselo junto a su copia de seguridad actual hasta que haya restaurado usted mismo desde él.
Ediciones
La copia y la restauración IMAP forman parte del núcleo Community y están, por tanto, en todas las ediciones: Community, Business y Service Provider. La Community Edition es gratuita y no tiene límite de buzones. El archivado IMAP y las copias reenviadas necesitan Business o Service Provider. Lo que añade cada edición está en la página de precios.
Preguntas frecuentes
¿Cómo copia Restow un buzón IMAP?
Se conecta al servidor IMAP por TLS desde el servidor de Restow y lee las carpetas de forma incremental: por carpeta sigue UIDVALIDITY y UIDNEXT, de modo que una ejecución solo obtiene el correo nuevo. Cada mensaje se guarda byte a byte (RFC 5322), con sus flags y su fecha interna, en el almacenamiento que usted elija, deduplicado y cifrado. El correo que se eliminó en el servidor se detecta en la siguiente ejecución y permanece en los puntos de restauración anteriores.
¿Cómo inicia sesión Restow en los buzones?
Hoy con una contraseña, en uno de tres modos por fuente: un inicio de sesión compartido para todos los buzones (el valor por defecto), una contraseña propia por buzón o una cuenta maestra que inicia sesión como cada buzón, en la forma de Dovecot master*buzón o como SASL PLAIN con un ID de autorización. OAuth2 para fuentes IMAP aún no está implementado; previsto.
¿Puedo copiar Microsoft 365, Outlook.com o Gmail por IMAP?
Microsoft 365 y Outlook.com no: Microsoft ha desactivado allí el inicio de sesión IMAP con usuario y contraseña, así que una conexión así no puede iniciar sesión en ningún modo, y Restow lo avisa cuando usted introduce un host IMAP de Microsoft. Copie los buzones de Microsoft 365 con una conexión de Microsoft 365. Para Gmail y Google Workspace, Restow inicia sesión con una contraseña que Google acepte para IMAP; si hace falta una contraseña de aplicación depende de las reglas de Google para la cuenta, que Restow no puede ver, y IMAP debe estar permitido para ella.
¿Copia calendarios y contactos?
No. IMAP transporta solo correo, ni calendario ni contactos.
¿Puedo copiar un servidor IMAP dentro de mi propia red?
Solo por decisión del operador. Restow se conecta desde su propio servidor, y un administrador del inquilino solo puede introducir servidores públicos: se rechazan el bucle local, las redes privadas y los nombres locales. Un servidor interno lo permite para toda la instalación un ajuste de la instalación, o para una fuente un administrador del proveedor que apruebe su host.
¿Cómo se restaura el correo en una cuenta IMAP?
Con IMAP append en una carpeta de destino, con la fecha y los flags originales; si la carpeta no existe, se crea. Con «Conservar ambos» (Keep both, el valor por defecto) todo va a una carpeta nueva con un nombre claro y no se toca nada de lo existente; con «Omitir los existentes» (Skip existing) el correo que ya está, reconocido por su Message-ID, se deja tal cual y solo se restaura el que falta. Ningún modo sobrescribe, sustituye, borra ni mueve nada en la cuenta de destino. El correo también se puede descargar como archivos .eml en un ZIP.
¿Y si mi proveedor da a cada buzón su propia contraseña?
Use el modo «Una contraseña por buzón» (One password per mailbox). Usted añade los buzones a mano o con una importación CSV (columnas login, name y email, más una password opcional) y establece y prueba la contraseña de cada buzón en la pestaña Directorio. Un buzón sin una contraseña que funcione se muestra como «No protegido» (Not protected) y no se copia hasta que se establece una.
¿Puede Restow archivar también el correo IMAP?
Sí, desde la 0.4.4, en Business y Service Provider: un trabajo de correo puede mantener sincronizada una cuenta IMAP para el archivo (con IMAP IDLE donde el servidor lo ofrezca) y tomar las copias que reenvía el proveedor de correo. El archivado IMAP es cercano al momento y no es completo; una copia reenviada se captura en el transporte. La copia sin estas ediciones funciona como se describe arriba.
¿Está la copia IMAP en la Community Edition?
Sí. Forma parte del núcleo Community y, por tanto, de todas las ediciones desde la 0.1.0, y la Community Edition no tiene límite de buzones. Restow es una beta: úselo junto a su copia de seguridad actual hasta que haya restaurado usted mismo desde él.
Documentación
La documentación (en inglés) tiene los detalles: conectar fuentes, IMAP (los tres modos de inicio de sesión, archivado, copias reenviadas), primeros pasos (conectar IMAP paso a paso) y copia y restauración.
Copia de seguridad de Microsoft 365 e IMAP, la visión general →