[Guida] Rdiffweb, gestione open source dei backup su GNU/Linux
Rdiffweb è un software open source per la gestione dei backup, che permette il ripristino degli archivi attraverso una navigazione semplificata. In questa mini guida vi mostrerò come configurare rdiff-backup con Rdiffweb, sfruttando l’SSH. Nell’esempio ho utilizzato due macchine virtuali in rete, la situazione ideale, tuttavia, sarebbe una rete LAN con cui far interagire un Raspberry Pi, usato come server, ed il proprio pc.
Rdiffweb, come configurare il server
Rdiffweb è un’applicazione web che ti permette di visualizzare i repository generati da rdiff-backup. Lo scopo di questa applicazione è facilitare la gestione dei backup e ripristinare rapidamente i dati con un’interfaccia web semplificata. Rdiffweb è scritto in Python ed è rilasciato come progetto open source con licenza GPL. Rdiff-backup, a sua volta, è software che offre robusti backup automatici da un computer Linux (client) a un altro computer Linux (server) utilizzando Secure Shell (SSH), massimizzando così lo spazio su disco.
Il primo step consiste nel configurare rdiff-backup e Rdiffweb sulla macchina che utilizzate come server. Questa procedura richiede anche l’installazione preliminare di pip3 package manager, ove non già presente, e la successiva creazione del file di configurazione di default:
#installazione nei componenti necessari sudo apt update sudo apt install python3-dev libldap2-dev libsasl2-dev rdiff-backup build-essential curl python3-pip openssh-server pip3 install -U rdiffweb #file di configurazione sudo mkdir -p /etc/rdiffweb sudo curl -L https://gitlab.com/ikus-soft/rdiffweb/-/raw/master/rdw.conf -o/etc/rdiffweb/rdw.conf
Sarà ora necessario editare il file di configurazione. Digitate, quindi, nel terminale, sudo nano /etc/rdiffweb/rdw.conf e, una volta aperto l’editor testuale, rimuovete il commento alla voce ServerHost, uguagliando la variabile all’indirizzo IP del server. Potete ottenere questa informazione con l’istruzione hostname -I. Nel mio caso, quindi, sarà ServerHost=10.0.2.4. Per evitare di avviare Rdiffweb manualmente al riavvio del computer, sarà necessario creare l’omonimo servizio di systemd e, successivamente, avviarlo. Utilizzate quindi queste direttive e, successivamente, riavviate il server:
sudo curl -L https://gitlab.com/ikus-soft/rdiffweb/-/raw/master/extras/systemd/rdiffweb.service -o /etc/systemd/system/rdiffweb.service sudo systemctl daemon-reload sudo service rdiffweb start
A questo punto, il servizio sarà attivo e, per avere una conferma che la procedura è andata a buon fine, provate dal browser del client ad effettuare una request all’indirizzo del server. In caso di esito positivo delle precedenti procedure, risulterà una schermata come nel seguente screenshot:
Sarà opportuno adesso accedere alla web app (di default le credenziali sono admin e admin123) e, dalla admin area, andare ad impostare la root directory dell’utente amministratore, nel mio caso /home/kali/Desktop/backup/.
Configurazione lato client: rdiff-backup
Terminata la configurazione del server, si può adesso passare a a quella del client, ovvero la macchina che contiene le cartelle di cui vogliamo effettuare il backup. Anche qui sarà necessario installare rdiff-backup, facendo attenzione che sia la stessa versione installata sul server. Date, quindi, da terminale, la seguente direttiva:
sudo apt install rdiff-backup
Per effettuare i backup, la sintassi da utilizzare è del tipo rdiff-backup <directory> user@ip::</percorso/assoluto/directory>. Nell’esempio, quindi, se voglio effettuare un backup della cartella ~/Desktop/prova presente sul client, nella cartella /home/kali/Desktop/backup/ del server, utilizzerò questa istruzione:
sudo rdiff-backup ~/Desktop/prova/ kali@10.0.2.4::/home/kali/Desktop/backup/
Una volta terminato il backup, aprendo la webapp di Rdiffweb potrete ora gestire agilmente i vostri repository. A questo punto è facile intuire che, tramite dei processi di automazione, è possibile impostare dei backup periodici delle vostre cartelle, controllabili anche da remoto.
Seguiteci sul nostro canale Telegram, sulla nostra pagina Facebook e su Google News. Nel campo qui sotto è possibile commentare e creare spunti di discussione inerenti le tematiche trattate sul blog.