Cómo instalar y utilizar el software de copia de seguridad BackupPC en Ubuntu 20.04 LTS

BackupPC es un paquete de software de copia de seguridad gratuito, de código abierto y basado en la web, que puede utilizarse para hacer copias de seguridad de ordenadores y portátiles con Linux, Windows y macOS. Está escrito en Perl y utiliza el protocolo Rsync, Samba o tar sobre ssh/rsh/nfs. Ofrece una potente interfaz web que permite ver los archivos de registro, la configuración, el estado actual y permite a los usuarios iniciar y cancelar las copias de seguridad y examinar y restaurar los archivos de las copias de seguridad. Es un sistema de copia de seguridad de alto rendimiento y de nivel empresarial para realizar copias de seguridad de un gran número de máquinas en el disco local de un servidor o en el almacenamiento en red.

En este tutorial, te mostraremos cómo instalar BackupPC en un servidor Ubuntu 20.04.

Requisitos previos

  • Dos servidores con Ubuntu 20.04.
  • Se ha configurado una contraseña de root en cada servidor.

Instalar BackupPC

Por defecto, BackupPC está disponible en el repositorio por defecto de Ubuntu 20.04. Puedes instalarlo simplemente ejecutando el siguiente comando:

apt-get install backuppc -y

Durante la instalación, se te pedirá que selecciones el tipo de configuración del correo, como se muestra a continuación:

Configurar BackupPC

Selecciona Sólo local y pulsa Intro. Se te pedirá que proporciones el nombre del correo del sistema como se muestra a continuación:

Nombre del correo del sistema

Proporciona el nombre que desees y pulsa Intro. Se te pedirá que selecciones el servidor web que quieres configurar como se muestra a continuación:

Elige el servidor web

Selecciona Apache y pulsa Intro para iniciar la instalación. BackupPC también configurará un usuario administrativo llamado backuppc con una contraseña para administrar varias tareas como el acceso al panel web de BackupPC. Una vez completada la instalación, deberías ver la siguiente pantalla:

Configurar BackupPC

Ahora, pulsa Enter para finalizar la instalación.

Cambiar la contraseña por defecto de BackupPC

Si quieres cambiar la contraseña de BackupPC. Puedes cambiarla con el siguiente comando:

htpasswd /etc/backuppc/htpasswd backuppc

Salida:

New password: 
Re-type new password: 
Updating password for user backuppc

Gestionar el servicio BackupPC

También puedes gestionar el servicio BackupPC con systemd.

Por ejemplo, puedes iniciar el servicio BackupPC con el siguiente comando:

systemctl start backuppc

Para comprobar el estado del servicio BackupPC, ejecuta el siguiente comando:

systemctl status backuppc

Deberías ver la siguiente salida:

? backuppc.service - LSB: Launch backuppc server
     Loaded: loaded (/etc/init.d/backuppc; generated)
     Active: active (running) since Sat 2020-07-25 13:59:33 UTC; 6min ago
       Docs: man:systemd-sysv-generator(8)
      Tasks: 2 (limit: 2353)
     Memory: 22.0M
     CGroup: /system.slice/backuppc.service
             ??4463 /usr/bin/perl /usr/share/backuppc/bin/BackupPC -d
             ??4464 /usr/bin/perl /usr/share/backuppc/bin/BackupPC_trashClean

Jul 25 13:59:32 backuppcserver systemd[1]: Starting LSB: Launch backuppc server...
Jul 25 13:59:32 backuppcserver backuppc[4442]:  * Starting backuppc...
Jul 25 13:59:33 backuppcserver backuppc[4442]:    ...done.
Jul 25 13:59:33 backuppcserver systemd[1]: Started LSB: Launch backuppc server.

Para activar el servicio BackupPC al iniciar el sistema, ejecuta el siguiente comando:

systemctl enable backuppc

Configurar el acceso SSH a los ordenadores cliente

Hay varias formas de que los servidores y los clientes se comuniquen para autenticarse y transferir datos. En este tutorial, utilizaremos el protocolo Rsync como método de copia de seguridad. Por tanto, tendrás que configurar la autenticación SSH sin contraseña para que cada cliente pueda acceder al sistema cliente sin necesidad de contraseña.

En el servidor de BackupPC, cambia el usuario a backuppc y genera un par de claves SSH con el siguiente comando:

su - backuppc
ssh-keygen

Deberías ver la siguiente salida:

Generating public/private rsa key pair.
Enter file in which to save the key (/var/lib/backuppc/.ssh/id_rsa): 
Created directory '/var/lib/backuppc/.ssh'.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /var/lib/backuppc/.ssh/id_rsa
Your public key has been saved in /var/lib/backuppc/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:kFWEjgktEgzWGFelWdY1B0w4WANvPJxM83X79FJA6GE backuppc@ubuntu2004
The key's randomart image is:
+---[RSA 3072]----+
|.==o.o.=*OB=.=o. |
|..+.o *+B+=.E ...|
|   . =o+ O.+ . .o|
|      o.o . .  oo|
|        S     . o|
|               . |
|                 |
|                 |
|                 |
+----[SHA256]-----+

A continuación, copia la clave SSH generada en el sistema cliente con el siguiente comando:

ssh-copy-id root@backuppc-client-ip

Deberías ver la siguiente salida:

/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/var/lib/backuppc/.ssh/id_rsa.pub"
The authenticity of host 'backuppc-client-ip (backuppc-client-ip)' can't be established.
ECDSA key fingerprint is SHA256:UMxtsszZC/MuEiAnSgV2q5tdckXnEw7MXTVBhtJCeEE.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
[email protected]'s password: 

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh 'root@backuppc-client-ip'"
and check to make sure that only the key(s) you wanted were added.

Desactivar el reenvío

A continuación, también deberás desactivar el reenvío de agentes ssh, el reenvío de puertos o incluso el pty para el usuario backuppc que se conecta al cliente desde BackupPC.

En el sistema Cliente, edita el archivo de claves autorizadas ssh con el siguiente comando:

nano .ssh/authorized_keys

Añade la siguiente línea antes de la palabra ssh-rsa:

from="your-server-ip",no-agent-forwarding,no-port-forwarding,no-pty

Configurar Apache para BackupPC

Por defecto, BackupPC sólo es accesible desde el localhost. Así que tendrás que editar el archivo de configuración de Apache para permitir el acceso a BackupPC desde la IP externa. Puedes hacerlo editando el siguiente archivo en la máquina del servidor:

nano /etc/apache2/conf-available/backuppc.conf

Busca la siguiente línea:

Require local

Sustitúyela por la siguiente línea:

Require all granted

Guarda y cierra el archivo cuando hayas terminado. A continuación, reinicia el servicio Apache para aplicar los cambios:

systemctl restart apache2

En este punto, tu servidor BackupPC es accesible desde la IP externa.

Accede a la interfaz web de BackupPC

Ahora, abre tu navegador web y escribe la URL http://backuppc-server-ip/backuppc. Deberías ver la pantalla de inicio de sesión de BackupPC:

Formulario de inicio de sesión de BackupPC

Proporciona tu nombre de usuario y contraseña de administrador de BackupPC y haz clic en el botón Iniciar sesión. Deberías ver el panel de control de BackupPC en la siguiente pantalla:

Estado del servidor BackupPC

Añadir máquina cliente a BackupPC

A continuación, tendrás que añadir la máquina cliente de la que quieres hacer una copia de seguridad con BackupPC.

En el tablero de BackupPC, haz clic en la opción Editar Hosts del panel izquierdo. Deberías ver el editor de configuración de hosts en la siguiente pantalla:

Añadir máquina cliente a BackupPC

Puedes ver que localhost ya está añadido como cliente. Sin embargo, sólo necesitamos hacer una copia de seguridad del cliente remoto, así que elimina el localhost haciendo clic en el botón eliminar. A continuación, haz clic en el botón añadir para añadir la máquina cliente remota, como se muestra a continuación:

Configurar hosts

Ahora, proporciona la IP de tu cliente remoto y haz clic en el botón Guardar para guardar la configuración.

A continuación, tendrás que configurar un método de transferencia de datos de copia de seguridad. En este tutorial, utilizaremos el protocolo Rsync para la transferencia de datos. Así que haz clic en la pestaña Xfer para configurar el método de transferencia de la base de datos. Deberías ver la siguiente pantalla:

Configuración de la transferencia de datos

Selecciona Rsync en Configuración de Xfer y haz clic en el botón Guardar para guardar los cambios.

A continuación, tendrás que definir la ruta del directorio del sistema cliente del que quieres hacer una copia de seguridad.

En el panel izquierdo, en Hosts, haz clic en el botón desplegable y selecciona un host cliente. Deberías ver la siguiente pantalla:

Resumen de la copia de seguridad

Ahora, haz clic en Editar configuración y haz clic en la pestaña Xfer. Deberías ver la siguiente pantalla:

Editor de configuración

En Configuración de Xfer, marca la casilla overide en RsyncShareName y escribe la ruta del directorio del que quieres hacer la copia de seguridad. Cuando hayas terminado, haz clic en el botón Guardar para aplicar los cambios.

A continuación, deberás configurar la programación de las copias de seguridad.

En el panel izquierdo, en Configuración del servidor, haz clic en Editar configuración y haz clic en la pestaña Programación. Deberías ver la siguiente pantalla:

Programar una copia de seguridad

Proporciona la configuración de copia de seguridad que desees y haz clic en el botón Guardar para aplicar los cambios.

Ahora, tendrás que ejecutar una copia de seguridad manual en tu cliente.

En el panel izquierdo, en Hosts, haz clic en el botón desplegable y selecciona un host cliente. Deberías ver la siguiente pantalla:

Iniciar copia de seguridad completa

En Resumen de la copia de seguridad > Acciones del usuario, haz clic en Iniciar copia de seguridad completa y si todo está bien. Deberías ver la siguiente pantalla:

Empieza a hacer una copia de seguridad del PC cliente

copia de seguridad iniciada

En el panel izquierdo, haz clic en el archivo LOG para comprobar los registros de la copia de seguridad. Deberías ver el registro de la copia de seguridad completa en la siguiente pantalla:

Registro de copias de seguridad

Para comprobar el resumen de la copia de seguridad, haz clic en el enlace Resumen del host en el panel izquierdo, en Servidor. Deberías ver la siguiente pantalla:

Resumen de la copia de seguridad

Para ver una lista de todos los archivos de copia de seguridad, haz clic en la IP del host, como se muestra en el resumen anterior, y luego haz clic en Examinar copias de seguridad > Número de copia de seguridad. Deberías ver todos los archivos de copia de seguridad en la siguiente pantalla:

Examinar la copia de seguridad

Conclusión

En este tutorial, has aprendido a configurar BackupPC en el servidor Ubuntu 20.04. También has aprendido a añadir un ordenador cliente a BackupPC a través de un navegador web y a realizar una operación de copia de seguridad. Espero que esta herramienta te ayude a configurar un sistema centralizado de copias de seguridad. No dudes en preguntarme si tienes alguna duda.

También te podría gustar...