Social

Después de algunos días viendo diferentes opciones para realizar las copias de seguridad dependiendo del entorno, he topado con una solución que viene como anillo al dedo para la mayoría de casos, sean en entorno domestico o profesional, para VPS Linux o para un PC Windows: URBACKUP.

¿Que es UrBackup?

UrBackup es un servicio que se ejecuta sobre Windows o Linux, y que permite administrar diferentes copias de seguridad en equipos que tengan instalado su cliente, independientemente del sistema operativo que utilicen. Además, esta disponible como paquete, como distribución (Linux+UrBackup) o como plugin para OpenMediaVault, la que yo he utilizado.

OMV, un par de discos y un RAID

Para almacenar las copias de seguridad de diferentes maquinas, instalé un OpenMediaVault en un PC bastante antiguo, y con un hardware, la verdad, bastante flojo.
Una CPU Core2Duo E6400, 1GB de RAM, un disco de sistema de 250GB y un par para las copias, también de 250GB. De media, con un uso muy básico y sin pantalla ni periféricos, consumiendo 60W/h. No esta mal.

Instalé OMV en el disco principal, y hice un RAID1 con los dos de 250GB. Además, programé copias diarias de los backups del RAID al disco de sistema, para tenerlo todo duplicado.
Al principio, tan solo utilizaba las carpetas creadas en el RAID para copias los datos a través de SSHFS, con BackupNinja tal y como explico en este post -> Backups remotos con BackupNinja y SSHFS.

Pero al descubrir UrBackup como una alternativa a VeamBackup, y ver que era compatible con OMV, me lancé sin dudarlo.

Instalación del servidor UrBackup

La instalación del servidor de UrBackup es sencilla, un ejecutable en Windows Server y desde los repositorios en Ubuntu o Debian:

Una vez instalado, la configuración es bastante intuitiva. Si vamos a realizar copias a través de Internet, debemos abrir el puerto para la copia (por defecto: 55413) y si queremos administrarlo por web (no lo recomiendo, por defecto puerto: 55414). Tenemos que abrir los puertos one to one, que el puerto externo o el interno siempre sea el mismo, ya que sino la configuración del servidor se machacará en el cliente.

Instalación del cliente UrBackup

Instalaremos los clientes en cada ordenador o servidor al que queramos realizar copias de seguridad.
Para Windows tan sencillo como un ejecutable, pero en Linux hay que compilarlo. Nada complicado:

Instalamos las dependencias que necesita UrBackup :

apt install build-essential “g++” libwxgtk3.0-dev “libcrypto++-dev” libz-dev

Atención: si no vamos a utilizar el entorno gráfico porque es un server, no hace falta que instalemos el paquete libwgtk3.0-dev, que además es muy pesado. A la hora de compilar también será diferente, seguir leyendo.

Descargamos el codigo fuente y lo extraemos:

wget https://hndl.urbackup.org/Client/2.2.6/urbackup-client-2.2.6.tar.gz
tar xzf urbackup-client-2.2.6.tar.gz

Y hacemos el build y la instalación:

cd urbackup-client-2.2.6
./configure

Cuidado, si no queremos el entorno gráfico, haremos el configure así:

./configure –enable-headless

Y seguimos:

make -j4
sudo make install

Comprobaremos que corra correctamente:

sudo urbackupclientbackend -v info

Añadimos el cliente UrBackup al inicio del sistema:

sudo chmod +x /etc/rc.local
nano /etc/rc.local

Y añadimos antes del exit 0:

/usr/local/sbin/urbackupclientbackend -d

Configuración del cliente

Una vez lo tenemos funcionando, vamos a conectarlo con el servidor.
Si estas en la misma red local, bastará con realizar un descubrimiento desde el panel web del servidor.
En el caso de que este en Internet, tienes que habilitar la opción en el servidor, tal que así:

Ahora, en el pagina principal (Estado) del servidor, añade un nuevo cliente. Selecciona Internet y escribe el nombre de maquina, es muy importante que sea correcto o no funcionará. Si no estas seguro, ejecuta

hostname
.

Una vez añadido, te aparecerá una pantalla con instrucciones para la instalación, pero si ya lo has hecho de la manera anterior, es parecido.

Ahora vamos a Ajustes, selecciona el Cliente, si solo tienes uno es Ajustes de cliente, y a la opción Internet.
Copia la clave que aparece como: Clave de copia por Internet. En el siguiente paso la pondremos en el campo CLAVE_COPIA.

Ahora volvemos al cliente, y crearemos el fichero de configuración:

nano /usr/local/var/urbackup/data/settings.cfg

Y añadiremos las siguientes lineas, modificandolas con los datos del servidor:

internet_server=Nombre_SERVER
internet_server_port=55415
internet_authkey=CLAVE_COPIA
internet_mode_enabled=true

Una vez hecho esto, ejecutaremos el siguiente comando, que se conectará con el servidor, y descargará toda la configuración sobre las copias, etc:

urbackupclientbackend -i -v debug

Ahora, solo nos quedará configurar en el panel web del servidor, los archivos por defecto a copiar, los archivos o carpetas a excluir, etc.
Automáticamente programará las copias cada ciertas horas de manera incremental, y también los backup de imagen del sistema, que nos permitirá restaurarlo de forma completa en caso de fallo.

Espero que te haya servido, y si es así: compártelo!

 


Xavi Gonzalez

Actualmente DevOps Engineer en MotoGP (Dorna Sports). Apasionado de GNU/Linux y del software libre. Me gusta trastear con cualquier gadget, y rodar en moto.

2 comentarios

Fran · 21 septiembre, 2022 a las 13:45

Hoia Xavi ¿sabría decirme donde puedo descargarme un manual de usuario de URBACKUP en español pero sobre el funcionamiento de la herramienta usuario final?

Alexander Zamora · 11 noviembre, 2022 a las 17:59

Tengo un servidor de respaldo Truenas Scale con UrBackup instalado, el problema es que quiero hacer un respaldo de los archivos que tengo en un windows server 2019. Ya instale el cliente del UrBackup en el servidor.

Lo que ya sabemos:
Truenas esta funcionando correctamente el UrBackup
El cliente dice “No internet server configured”

Ambas computadoras estan en la misma red local si hago un ping desde cualquiera puede ver a otra pero el cliente no se conecta. Alguna idea de donde podria estar el problema?

Deja una respuesta

Marcador de posición del avatar

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*