Duplicati

Gestiona fácilmente tus copias de seguridad

Roberto Lodeiro

¿Necesitas una herramienta para gestionar tus copias de seguridad? entonces continua leyendo.

Duplicati es opensource y totalmente gratuito. Te permite guardar tus copias de seguridad en otro equipo mediante SFTP (SSH), Webdav, FTP o S3 entre muchos otros.


1. Descarga

Lo primero es descargar la última versión para nuestro sistema operativo, en nuestro caso será Debian. Podemos descargarlo desde su página oficial.

Hay versiones para Linux, Windows y macOS. Se encuentra en fase beta, pero por lo que lo he probado es totalmente estable. La última versión disponible en este momento es la 2.0.6.3.

2. Instalación

Como he comentado nos centraremos en la instalación en un entorno Linux, concretamente Debian.

  • Descargamos la última versión disponible:
wget https://updates.duplicati.com/beta/duplicati_2.0.6.3-1_all.deb
  • Instalamos el archivo descargado:
sudo apt install ./duplicati_2.0.6.3-1_all.deb -y
  • Creamos el servicio:
sudo nano /etc/systemd/system/duplicati.service

Pegamos dentro el siguiente contenido y guardamos:

[Unit]
Description=Duplicati web-server
After=network.target

[Service]
Nice=19
IOSchedulingClass=idle
EnvironmentFile=-/etc/default/duplicati
ExecStart=/usr/bin/duplicati-server $DAEMON_OPTS
Restart=always

[Install]
WantedBy=multi-user.target
  • Editamos /etc/dafault/duplicati:
sudo nano /etc/default/duplicati

Lo dejamos con las opciones que se muestran a continuación y guardamos:

# Defaults for duplicati initscript
# sourced by /etc/init.d/duplicati
# installed at /etc/default/duplicati by the maintainer scripts

#
# This is a POSIX shell fragment
#

# Additional options that are passed to the Daemon.
DAEMON_OPTS="--webservice-interface=any --webservice-port=8200"

En este caso, estamos indicando que el servicio se levante en el puerto 8200, si lo tenemos ocupado por otro servicio podemos modificarlo.

  • Habilitamos, iniciamos y comprobamos el estado del service de duplicati:
sudo systemctl enable duplicati.service
sudo systemctl daemon-reload
sudo systemctl start duplicati.service 
sudo systemctl status duplicati.service

Con esto ya tendremos disponible duplicati en nuestra máquina. Podemos entrar por http://192.168.1.XXX:8200, indicando la ip de la máquina donde lo hemos instalado y el puerto.

3. NGINX reverse proxy

Si tenemos un dominio local, y queremos servir duplicati por ejemplo bajo un subdominio de este, tan solo tenemos que agregar un reverse proxy en nuestra configuración de NGINX.

La configuración de dicho reverse proxy sería la siguiente:

server {

listen 80;
server_name duplicati.midominio.local;
# enforce https
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl;
server_name duplicati.midominio.local;
ssl_certificate /ruta/midominio.local.pem;
ssl_certificate_key /ruta/midominio.local.key;
location / {
proxy_pass http://127.0.0.1:8200;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;

}
}

Tan solo tenemos que modificar las rutas de nuestro certificado ssl y nuestro dominio local.

Para que duplicati funcione bajo nuestro dominio, tenemos que indicarlo en la configuración de duplicati. Entraremos por la ip de nuestra máquina en http://192.168.1.XXX:8200 y seleccionaremos lo siguiente:

Permitir el acceso remoto indicado en Hostnames el dominio que hemos configurado en nuestro reverse proxy.

También hemos seleccionado la opción de contraseña, la cual se nos pedirá cada vez que entremos en duplicati.

Tras rellenar los campos necesarios en la página de configuración, bajamos hasta el final de la misma y pulsamos OK para que los cambios se guarden.

Ahora ya podemos entrar a duplicati por https://duplicati.midominio.local.

4. Copias por SFTP (SSH)

  • Entramos en añadir copia de seguridad, donde podremos configurar nueva copia de seguridad o importar desde un archivo. En nuestro caso escogemos la primera opción:

Aquí indicaremos el nombre de nuestra copia de seguridad, una descripción de la misma si queremos, y el cifrado deseado así como una contraseña para el cifrado.

  • En destino, seleccionamos lo siguiente:

Indicamos en tipo de almacenamiento SFTP, el servidor y puerto de la maquina remota donde guardaremos nuestra copia de seguridad, así como el usuario y la contraseña de la maquina remota.

Es importante que pinchemos en conexión de prueba para aceptar el certificado como válido.

  • Datos de origen: Aquí solo tenemos que marcar la carpeta local de la cual queremos hacer la copia de seguridad.

  • Horario:

Aquí podemos programar nuestra copia de seguridad, o bien desmarcar la opción de ejecutar automáticamente las copias de seguridad para ejecutarla cuando queramos de forma manual desde la pantalla de inicio.

  • Opciones:

Indicaremos el tamaño de volumen, ya que duplicati guarda la copia en partes. Yo esto suelo dejarlo por defecto.

También podemos indicar la forma en la que deseamos conservar la copia de seguridad, yo suelo hacerlo como en la captura, conservar solo 1 copia.

Pulsamos en guardar, y nuestra copia de seguridad quedará configurada.

Por supuesto, en el menú de Restaurar podremos restaurar nuestras copias de seguridad cuando deseemos.

Queda de tu mano probar otras opciones disponibles de destinos, ya que admite muchos tipos. Yo he optado por SFTP.


Espero que sea útil, ¡gracias por leerme!