¿Por qué son indispensables las copias de seguridad?
Una copia de seguridad (o backup) es, en esencia, un seguro contra la pérdida de información. Los escenarios en los que un backup reciente marca la diferencia entre "problema menor" y "catástrofe" son más comunes de lo que parece:
- Fallas de hardware: discos duros y SSD tienen una vida útil finita; todos fallan eventualmente.
- Ataques de malware o ransomware: si tus archivos se cifran o corrompen, un backup externo es la única salida sin pagar rescate.
- Errores humanos: un
DELETEsinWHERE, un archivo sobrescrito por accidente, una carpeta borrada sin querer. - Desastres físicos: incendios, inundaciones o robos que afectan al equipo donde vive tu única copia.
La regla de oro en la industria es la estrategia 3-2-1: mantener al menos 3 copias de tus datos, en 2 medios distintos, con 1 copia fuera del sitio (offsite). El backup vía FTP hacia la nube que armamos en este artículo cubre precisamente ese último punto.
Qué hace exactamente el script de automatización
En lugar de copiar archivos manualmente cada semana (algo que, seamos honestos, se termina olvidando), automatizamos todo el proceso con un script que ejecuta tres tareas en secuencia:
- Comprimir una carpeta local en un único archivo
.zip, con la fecha y hora en el nombre para poder identificar cada respaldo. - Subir ese archivo comprimido a un servidor FTP remoto de forma desatendida.
- Eliminar el
.ziplocal una vez confirmada la subida, para no acumular espacio en disco.
Este flujo se puede programar con el Programador de Tareas de Windows para que corra todos los días, cada semana, o con la frecuencia que definas, sin que nadie tenga que intervenir manualmente.
Requisitos previos
Antes de usar el script necesitas tener instalado lo siguiente:
- 7-Zip, en la ruta por defecto
C:\Program Files\7-Zip\7z.exe(puedes descargarlo gratis desde el sitio oficial). - Acceso a un servidor FTP con usuario y contraseña válidos (puede ser tu propio VPS, un NAS, o el servicio de Backup Cloud de Terranode).
- Permisos de escritura sobre la carpeta que quieres respaldar y sobre la carpeta destino del
.ziptemporal.
El script completo
Guarda el siguiente contenido como backup_ftp.bat. Antes de ejecutarlo, ajusta las variables BACKUP, FTPHOST, FTPUSER y FTPPASS con tus propios datos:
:: Script de backup automático hacia FTP
:: Realizado por Terranode - Requiere 7-Zip instalado previamente
@echo off
:: Definir variables
set FECHA=%date:~6,4%-%date:~3,2%-%date:~0,2%
set HORA=%time:~0,2%-%time:~3,2%
set BACKUP=C:\Users\terranode\Desktop\BACKUP
set ZIPFILE=backup_%FECHA%_%HORA%.zip
set FTPHOST=10.10.10.15
set FTPUSER=terranode
set FTPPASS=TuClaveSegura123#
:: Comprimir carpeta en archivo zip
echo Comprimiendo archivos...
"C:\Program Files\7-Zip\7z.exe" a -tzip "%BACKUP%\%ZIPFILE%" "%BACKUP%\*"
:: Subir archivo al servidor FTP
echo Subiendo archivo al servidor FTP...
echo user %FTPUSER%>%TEMP%\ftpcmd.dat
echo %FTPPASS%>>%TEMP%\ftpcmd.dat
echo put "%BACKUP%\%ZIPFILE%" "backup/%ZIPFILE%">>%TEMP%\ftpcmd.dat
echo quit>>%TEMP%\ftpcmd.dat
ftp -n -s:%TEMP%\ftpcmd.dat %FTPHOST%
del %TEMP%\ftpcmd.dat
:: Eliminar archivo zip local
echo Eliminando archivo zip local...
del "%BACKUP%\%ZIPFILE%"
echo Proceso de backup completado correctamente.
pause Cada archivo generado queda identificado con la fecha y hora exacta en que se realizó la copia (por ejemplo backup_2025-01-15_14-30.zip), lo que facilita muchísimo encontrar la versión correcta si necesitas restaurar información de un día específico.
Cómo programar la ejecución automática
Para que el script corra solo, sin intervención manual, usa el Programador de Tareas de Windows:
- Abre
taskschd.msc(Programador de tareas). - Crea una nueva tarea básica y asígnale un nombre descriptivo, por ejemplo Backup diario FTP.
- En el desencadenador, elige la frecuencia (diaria, semanal, etc.) y la hora de ejecución.
- En la acción, selecciona Iniciar un programa y apunta a la ruta de tu archivo
backup_ftp.bat. - Guarda la tarea y ejecútala una vez manualmente para confirmar que todo funciona antes de dejarla desatendida.
Buenas prácticas de seguridad
Antes de poner este script en producción, ten en cuenta lo siguiente:
- Nunca dejes credenciales en texto plano en un script que se comparta o suba a un repositorio. Considera usar variables de entorno o un gestor de secretos si el equipo crece.
- Usa FTPS o SFTP en lugar de FTP tradicional siempre que el servidor lo soporte, ya que FTP transmite las credenciales sin cifrar.
- Limita los permisos del usuario FTP únicamente a la carpeta de destino de los backups, nunca a la raíz del servidor.
- Verifica periódicamente que los backups se estén generando y que el archivo no esté corrupto: un backup que nadie prueba es, en la práctica, un backup que no existe.
Beneficios de automatizar tus backups hacia la nube
Más allá de la tranquilidad obvia, automatizar este proceso trae ventajas concretas:
- Consistencia: los respaldos se generan siempre, sin depender de que alguien se acuerde de hacerlo.
- Trazabilidad: cada archivo queda marcado con fecha y hora, lo que simplifica auditorías y recuperación puntual.
- Reducción de errores humanos: elimina el riesgo de copiar la carpeta equivocada o de olvidar subir el respaldo.
- Recuperación más rápida: al tener copias organizadas cronológicamente en la nube, restaurar información ante un incidente toma minutos, no horas.
Complementa tu estrategia con Backup Cloud de Terranode
Si prefieres no depender de un script casero para tu infraestructura de producción, el servicio de Backup Cloud de Terranode ofrece almacenamiento seguro en la nube con programación automática de respaldos, retención configurable y recuperación con unos pocos clics. Los datos se guardan en servidores redundantes, protegidos ante fallas de hardware y catástrofes físicas, para que la continuidad de tu negocio no dependa de un solo punto de falla.
Automatizar tus copias de seguridad hacia un servidor FTP remoto es una de las inversiones de tiempo con mejor retorno que puedes hacer en la administración de tu infraestructura: se configura una sola vez y te protege indefinidamente. Combina este script con una política de retención clara y, si buscas una solución más robusta y gestionada, considera complementarla con el servicio de Backup Cloud de Terranode. Si tienes dudas durante la implementación, nuestro equipo de soporte técnico está disponible 24/7 para ayudarte.
Hosting con LiteSpeed, NVMe y soporte 24/7 desde $3/mes.