Cómo hacer una copia de seguridad automatizada en red con Linux y rsync

Linux tiene todas las herramientas que necesitas para crear una copia de seguridad de red automatizada y sencilla. Lo mejor de todo es que es muy fácil de configurar y te servirá sin problemas (siempre y cuando tu red esté funcionando) hasta que ya no necesites esta copia de seguridad.

Índice de Contenido
  1. Lo que necesitarás
  2. Generar una clave ssh
  3. Copiar la clave pública
  4. El script de copia de seguridad
  5. Automatizando la copia de seguridad
  6. Simple y sencillo

Lo que necesitarás

En primer lugar, vas a hacer esto desde y hacia Linux. No importa qué distribución estés utilizando, siempre y cuando sea Linux. Tanto la máquina de origen como la de destino deberán tener instalado el paquete openssh-server. Si necesitas instalar openssh-server en alguna de las máquinas, puedes hacerlo desde el gestor de paquetes gráfico o ejecutar la instalación desde la línea de comandos.

Por ejemplo, para instalar en Ubuntu sería necesario utilizar el siguiente comando:

sudo apt-get install openssh-server

También deberás generar una clave ssh. Esto es importante: vamos a generar una clave ssh sin contraseña. Sí, esto se podría considerar un problema de seguridad, pero supongo que esto se está utilizando en una red segura; si tu red (o tu máquina de origen y de destino) no es segura, probablemente no deberías considerar una opción como las copias de seguridad sin contraseña. Sin embargo, si necesitas hacer una copia de seguridad automatizada con rsync de una máquina a otra, aquí te muestro cómo hacerlo.

Generar una clave ssh

El primer paso es generar una clave ssh sin contraseña. Sigue estos pasos.

Cómo garantizar la validación local de los clientes en un dominio multi-sitio
  1. Abre una ventana de terminal.
  2. Ejecuta el comando ssh-keygen -t rsa.
  3. Cuando se te pida una ubicación para guardar la clave, presiona Enter en el teclado.
  4. Cuando se te pida una contraseña, presiona Enter en el teclado.
  5. Cuando se te pida verificar la contraseña, presiona Enter en el teclado.

Los pasos anteriores generarán un par de claves ssh. Si buscas en ~/.ssh, encontrarás dos claves con los siguientes nombres (si elegiste los valores predeterminados durante el proceso de generación de claves).

  • id_rsa
  • id_rsa.pub

Copiar la clave pública

Ahora debemos copiar la clave id_rsa.pub desde la máquina de origen a la de destino; esto se realiza con la ayuda de ssh. Esto es lo que debes hacer.

  1. Abre una ventana de terminal.
  2. Ejecuta el comando ssh-copy-id -i ~/.ssh/id_rsa.pub USUARIO@IP_HOST_REMOTA (USUARIO es el nombre del usuario en el host remoto y IP_HOST_REMOTA es la dirección IP del host remoto).
  3. Cuando se te solicite, ingresa la contraseña del host remoto.

La clave ssh se copiará automáticamente en la ubicación necesaria en el host de destino y estarás listo para crear un script de copia de seguridad.

El script de copia de seguridad

Crearemos un script de copia de seguridad muy sencillo para este proceso. Voy a asumir que la carpeta de origen para la copia de seguridad es ~/TEST y la ubicación para la copia de seguridad en la máquina de destino es ~/BACKUPS/, deberás modificar esto según sea necesario. El script sencillo se vería así:

#!/bin/sh
rsync -e ‘ssh -p 22’ -avzp /home/USUARIO1/TEST IP_HOST_DE_DESTINO:/home/USUARIO2/BACKUPS

  • USUARIO1 es el nombre de un usuario en la máquina de origen
  • TEST es el directorio que se va a respaldar
  • IP_HOST_DE_DESTINO es la dirección IP real de la máquina de destino
  • USUARIO2 es el nombre de un usuario en la máquina de destino
  • BACKUPS es el directorio para almacenar las copias de seguridad

Guarda ese archivo con el nombre rsync_script y luego dale permisos de ejecución con el comando chmod +x rsync_script.

Cuál es la mejor opción de protocolo de enrutamiento para una red empresarial

Antes de configurar el proceso de automatización, prueba el script con el comando ./rsync_script. Debería completarse sin errores y deberías encontrar el directorio de copias de seguridad en la máquina de destino.

Automatizando la copia de seguridad

Usaremos cron para automatizar la ejecución del script de copia de seguridad. Para hacerlo increíblemente fácil, puedes colocar tu rsync_script en uno de los siguientes directorios:

  • /etc/cron.hourly (para ejecuciones cada hora)
  • /etc/cron.daily (para ejecuciones diarias)
  • /etc/cron.weekly (para ejecuciones semanales)
  • /etc/cron.monthly (para ejecuciones mensuales)

Si necesitas que el script de copia de seguridad se ejecute en un momento específico, tendrás que crear manualmente una tarea cron ejecutando el comando crontab -e y luego añadiendo una línea como esta:

00 00 * * * /usr/local/rsync_script

La entrada de crontab anterior asume que moviste el rsync_script a /usr/local/ y que deseas que el script se ejecute todos los días a medianoche. Guarda el archivo de cron (generalmente pulsando [Ctrl]+[x]) y comenzará a ejecutarse la próxima vez que el reloj marque la medianoche.

Simple y sencillo

Este método de copia de seguridad con rsync a través de ssh es increíblemente simple; puedes hacerlo mucho más complicado e incluso crear scripts para realizar múltiples copias de seguridad a través de ssh.

Los 8 pasos para solucionar problemas de red y sistemas

Recuerda: Este es un sistema de copia de seguridad sin contraseña, por lo que si estás trabajando con una red o sistemas que no están seguros, es posible que desees buscar otra opción. De lo contrario, esta es una solución muy rápida y sencilla para hacer copias de seguridad de datos de una máquina a otra.

En Newsmatic nos especializamos en tecnología de vanguardia, contamos con los artículos mas novedosos sobre Redes, allí encontraras muchos artículos similares a Cómo hacer una copia de seguridad automatizada en red con Linux y rsync , tenemos lo ultimo en tecnología 2023.

Artículos Relacionados

Subir

Utilizamos cookies para mejorar su experiencia de navegación, mostrarle anuncios o contenidos personalizados y analizar nuestro tráfico. Al hacer clic en “Aceptar todo” usted da su consentimiento a nuestro uso de las cookies.