Outils pour utilisateurs

Outils du site


wiki:linux:urbackup

Table des matières

Mise en place d'un serveur UrBackup et exploitation

Dans cette documentation nous installerons une solution de sauvegarde sur base de urBackup. Nous installerons aussi les agents sur les clients à sauvegarder.

Cette documentation est réalisée dans le cadre scolaire, il peut donc y avoir d'autres méthodes plus ou moins simple pour y parvenir. Pour mieux s'y retrouver cette documentation disposera de plusieurs screenshots illustrant les consignes.

Préambule

Sauvegarde : bonne pratiques

N’oubliez pas également de suivre la règle de sauvegarde 3-2-1.

  • Faire au moins 3 copies des données.
  • Stocker les copies sur 2 supports différents.
  • Mettre 1 copie hors du site.

Il existe plusieurs supports de sauvegarde :

  • Cloud (AWS, Hubic, Drive…)
  • LTO (Sur bande, meilleure solution de sauvegarde niveau rapport prix/quantité de données)
  • NAS/DAS/SAN (Stockage en dur auto-hebergé)

Afin de réaliser une sauvegarde hors-site, il faut chiffrer les données afin d'éviter qu'une personne puisse les reconstruire.

Prévoir un PRA en cas d'incident sur l'infrastructure : il doit être concis, précis et rapide à comprendre.

Voici un exemple de PRA pour une société nommée Mégaproduction : wiki:others:pra_redaction

Exemple d'un déroulement d'incident :

Pourquoi urbackup ?

Il s'agit d'un système de sauvegarde client/serveur open source et facile à configurer qui, grâce à une combinaison de sauvegardes d'images et de fichiers, assure à la fois la sécurité des données et un temps de restauration rapide.

Les données de toute organisation sont très importantes. C'est pourquoi la sauvegarde de vos données est encore plus importante pour les garder en sécurité en cas de sinistre. UrBackup est une solution de sauvegarde réseau puissante et gratuite pour un usage personnel ou professionnel.

Le programme offre une bonne poignée de fonctions disponibles dans le logiciel de sauvegarde. Parmi eux, nous trouverons une interface Web pour gérer toutes les sauvegardes. Il peut être installé sur Gnu/Linux, Windows et de nombreux systèmes d'exploitation NAS basés sur GNU/Linux.

Prérequis

Je considère que vous avez déjà plusieurs clients à sauvegarder, ici nous installerons seulement l'agent et non la machine complète.

Nous considérons que vous êtes équipé de cette manière :

  1. Une VM sous Debian 11 Le client a sauvegarder
  2. Une VM sous Debian 11 vierge [srv-urbackup]

Les allocations de matériel (CPU/RAM…) sont à allouer selon vos envies, attention à respecter la configuration minimale. C'est à dire :

Pour UrBackup :

  1. 4GB de ram
  2. 2 cœurs de CPU
  3. 32GB d'espace disque pour l'OS
  4. XXGB ² d'espace disque pour les sauvegardes
  5. Debian 11

² Tout dépend du volume de données que vous souhaiter enregistrer

Nos IP pour notre infrastructure seront :

  1. [CLIENT] : 10.192.43.10
  2. [UrBackup] : 10.192.43.13

Mot de passe par défaut sur toutes les sessions : Not24get

Rappel des deux commandes essentiels :

  1. ip a (connaitre son adresse IP)
  2. nano /etc/network/interfaces (configuration de l'interface réseau)

Ajouter les deux machines dans un logiciel tel que mRemoteNG pour faciliter l'administration.

Préparation du disque de sauvegarde

Mise en ligne du disque

Selection du disque

Lister les disques disponibles, puis choisissez le disque que vous souhaitez préparer. Dans notre cas, ce sera le /dev/sdb de 100GB.

fdisk -l
fdisk /dev/sdb

Visualiser la table de partition

Afficher la table de partition avec la commande p.

Création de la partition de type Linux

Avec la commande n

Si vous souhaitez un autre type de partition :

  • Utiliser la commande t.
  • Choisissez dans la liste le code HEX correspondant au type de partition que vous souhaitez.

Écriture des nouveaux changements

Avec la commande w, les changements vont êtres write sur la partition sélectionnée.

Formatage de la partition

Quitter l'outil fdisk avec CTRL+C.

Formater la partition en utilisant le système de fichier ext4 :

mkfs.ext4 -b 4096 /dev/sdb1

Montage du disque

  • Création du dossier dans le lequel le disque va être monté :
mkdir /media/backup
  • Monter le disque :
mount /dev/sdb1 /media/backup

Vérifier avec la commande fdisk -l | grep sdb :

Le disque est monté dans /media/backup et est prêt à recevoir les prochaines sauvegardes.

Montage du disque automatiquement

  • Récupérer l'UUID du disque :
blkid

  • Ajouter dans fstab
nano /etc/fstab

(en précisant l'UUID du lecteur à monter et son point de montage, ici /media/backup)

UUID=587e5f03-8fba-4144-8bea-c08c7e8dfbf8 /media/urbackup ext4 defaults 0 2

Installation du serveur UrBackup

Avec le binary sous Debian Bullseye

Avant d’exécuter les commandes, assurez vous que votre système est à jour.

Dernière version actuelle : 2.5.30

Mettez vous dans un répertoire temporaire pour le téléchargement du .deb.

wget https://hndl.urbackup.org/Server/2.5.30/debian/bullseye/urbackup-server_2.5.30_amd64.deb

Une fois le fichier télécharger, forcer l'installation avec :

dpkg -i urbackup-server_2.5.30_amd64.deb

Des erreurs vont apparaitre mais cela est normal : il manque des dépendances. Vous devez les installer avec :

apt install -f

Renseigner le répertoire récemment monté sur le serveur. Si vous ne l'avez pas fait ou que vous souhaiter changer ce lien, utiliser cette commande.

dpkg-reconfigure urbackup-server

Activer le démarrage du service dès le démarrage de la machine :

systemctl enable urbackupsrv

Le nom du service pour le serveur UrBackup est urbackupsrv.

Une fois l'installation terminée rendez-vous sur le page de UrBackup.

Le serveur web écoute sur le port 55414.

Créer l'utilisateur adminisrateur

Pensez à créer l'utilisateur admin, il vous sera nécessaire par la suite.

Autoriser l'écriture sur le disque de sauvegarde

Pour autoriser urBackup à écrire sur le disque de sauvegarde, il faut lui donner les droits. Nous avons précédemment choisi /media/backup comme point de montage de sauvegarde

chmod -R 750 /media/backup  
chown -R urbackup:urbackup /media/backup

DNS & Reverse Proxy sur apache2

Nous souhaitons que notre serveur de backup soit accessible sur backup.dom.megaprod.lan.

Création du DNS

Dans notre serveur DNS (en l’occurrence sur Windows Server), ajouter dans les zones de recherche directes une propriété.

Création du reverse proxy sur a2

  • Créer un fichier dans /etc/apache2/sites-available :
touch /etc/apache2/sites-available/backup.conf
  • Ajouter la configuration
snippet.yaml
<VirtualHost *:80>
  ServerName backup.dom.megaprod.lan
  RewriteEngine on
 
  ProxyPass / http://10.192.43.13:55414/ #spécifier l'adresse du serveur urbackup et son port
  ProxyPassReverse / http://10.192.43.13:55414/
  ProxyPreserveHost On
  ProxyAddHeaders On
  RequestHeader set X-Forwarded-Proto "http"
</VirtualHost>
  • Activer le site
 a2ensite backup.conf
  • Redémarrer le service apache2
systemctl restart apache2

La page de urbackup est désormais accessible depuis backup.dom.megaprod.lan.

Configuration de urBackup

Configuration de l'onglet Internet et Serveur

  • Si vous voulez que les clients puissent accéder à leurs sauvegardes via le navigateur et “clic droit → Restaurer/accéder aux sauvegardes”, entrez une URL de serveur. Par exemple : http://backups.company.com:55414/. Assurez-vous que votre DNS est configuré de telle sorte que backups.company.com pointe vers l'IP interne du serveur de sauvegarde si l'accès se fait à partir du réseau interne et pointe vers l'IP externe dans le cas contraire.

  • Si vous souhaitez que votre serveur soit accessible sur d'autres VLAN, vous devez activer la fonctionnalité Internet et ajouter le FQDN dans Server URL clients connect to:

Configuration du serveur mail

Pour pouvoir générer des alertes, vous devez spécifier un serveur mail relay et un port. Une fois configuré, vous pouvez essayer votre configuration en ajoutant une adresse de test dans la dernière textbox.

Gestion des alertes

Les scripts qui sont existants sont déjà étudier pour envoyer des mails si des éventements se déroulent.

Installation du client UrBackup

Installation manuelle

Via la commande d'installation automatique

Selon la documentation de urBackup, vous pouvez installer et mettre à jour le binary du client via une seule commande :

snippet.bash
TF=$(mktemp) && wget "https://hndl.urbackup.org/Client/2.5.23/UrBackup%20Client%20Linux%202.5.23.sh" -O $TF && sh $TF; rm -f $TF

Sur une distribution Linux

Dans le GUI de UrBackup

  • Ajouter un client :

  • Copier la commande et coller la sur le client pour installer l'agent

Sur le client

  • Coller la commande dans le CLI en utilisateur root.

(penser à enlever la commande sudo avant le sh, elle risque d'êtres gênante)

snippet.bash
TF=`mktemp` && wget "http://10.192.43.13:55414/x?a=download_client&lang=fr&clientid=1&authkey=b4n5f7wl7B&os=linux" -O $TF && sh $TF; rm -f $TF

(commande unique pour chaque client)

  • Sélectionner 4 au moment de l'installation.

Activer le service au démarrage :

systemctl enable urbackupclientbackend
  • Modification de la configuration :
nano /etc/default/urbackupclient

Modifier les variables en :

snippet.yaml
INTERNET_ONLY=false
RESTORE=server-confirms
HTTP_SERVER=urbackup://10.192.43.13 #ip de votre serveur de backup

  • Redémarrer le service
systemctl restart urbackupclientbackend
  • Vérifier la bonne exécution du service avec:
systemctl status urbackupclientbackend
ss -pentul | grep urbackup

Le nom du service pour le client UrBackup est urbackupclientbackend.

Les logs sont disponibles dans /var/log/urbackupclient.log.
La configuration est disponible dans /etc/default/urbackupclient.

La configuration de server-idents.txt est dans /usr/local/var/urbackup/server_idents.txt

Vérification du client dans UrBackup GUI

Le serveur que l'on vient d'ajouter est bien sous le statut En ligne :

Désinstallation du client de la machine

  • Naviguer dans le dossier /usr/local/sbin
  • Exécuter le script uninstall_urbackupclient

UrBackup est désormais désinstallé de la machine.

Pour le retirer du serveur, supprimer la machine via la GUI puis forcer le nettoyage :

urbackupsrv cleanup --amount x

Sur Windows

Dans le GUI de UrBackup

  • Ajouter un client :

  • Copier la commande et coller la sur le client pour installer l'agent

Sur le client windows 10

  • Exécuter le fichier d'installation :

Une fois l'agent installé, vous retrouverez dans la barre des tâches le client en train de s’exécuter.

  • Configuration de UrBackup

Dans l'onglet Internet renseigner le serveur, ici, urbackup://10.192.43.13 sans port.

Vérification du client dans UrBackup GUI

Le serveur que l'on vient d'ajouter est bien sous le statut En ligne :

La sauvegarde débute sur le client Windows.

Une fois que toutes les machines sont ajoutées voici le résultat :

Sauvegardes

Les types de sauvegardes

  • Sauvegarde complétée : La sauvegarde complète ou totale permet de sauvegarder toutes les données, les répertoires et les sous répertoires sélectionnés. C'est le type de sauvegarde le plus rapide, le plus simple, et le plus précis pour restaurer les données sans erreurs. Cependant, les sauvegardes complètes prennent beaucoup de temps pour de gros volumes de données, elles ne sont pas effectuées quotidiennement car elle serait trop longue à réaliser. Généralement, les sauvegardes complètes sont effectuées le vendredi soir pour ne pas gêner l'activité de l'entreprise.
  • Sauvegarde incrémentielle : La sauvegarde incrémentale permet de sauvegarder les données qui ont été modifiées ou ajoutées depuis la dernière sauvegarde complète ou incrémentale. La sauvegarde incrémentale permet de sauvegarder les dernières modifications sur les fichiers plus rapidement qu'avec une sauvegarde complète. L'inconvénient de la sauvegarde incrémentale est le temps, la complexité, et la fiabilité de la restauration des données.

En effet pour restaurer les données du jour J il faut déjà restaurer la dernière sauvegarde complète, puis restaurer les unes après les autres les sauvegardes incrémentales jusqu'au jour J.

Sauvegarde d'un SGBD MariaDB sous Debian

Documentation : https://www.urbackup.org/backup_mysql.html.

Urbackup permet de sauvegarder les bases de données PostgreSQL, MariaDB et MySQL sans avoir à ajouter une tâche cron. Sur la machine ou il y a le serveur MariaDB, activez l'option.

Avantages :

  • Facile à mettre en place
  • Permet la migration vers une version différente de MySQL lors de la restauration
  • Non binaire. Par exemple, vous pouvez supprimer manuellement certaines tables ou modifier des données avant la restauration.
  • Peut être plus petit car il n'inclut pas les index.

Inconvénients :

  • Le temps de restauration peut être plus long car MySQL/MariaDB doit reconstruire les index.
  • Les sauvegardes incrémentales peuvent entraîner des transferts importants avec UrBackup.
  • La base de données complète (sans les index) doit être lue pendant les sauvegardes incrémentales.

Conclusion : Utilisez cette méthode de sauvegarde si vous avez une petite base de données (par exemple 1GB) sous Linux.

Configuration de l'agent

Modifier le fichier de configuration mariadbdump.conf :

nano /usr/local/etc/urbackup/mariadbdump.conf

Activer la sauvegarde en mettant 1 à la ligne MARIADB_DUMP_ENABLED, renseignez le compte utilisateur et ajoutez le mot de passe.

Il est préférable de mettre ce mot de passe dans un fichier caché, par exemple .urbackpwd et de renseigner le chemin dans le fichier de configuration.

MARIADB_BACKUP_PASSWORD=/home/adminlocal/.urbackuppwd
  • Créer le fichier .urbackuppwd
touch /home/adminlocal/.urbackuppwd

Ajouter le mot de passe root pour se connecter au SGBD.

  • Redémarrer le client avec
systemctl restart urbackupclientbackend

Lors de la sauvegarde, la basse de donnée sera sauvegardée et un fichier .sql sera présente dans les sauvegardes à ce chemin urbackup_backup_scripts/mariadbdump.sql.

Commencez avec une base de données vide, téléchargez le dumping SQL du serveur et importer le dumping SQL avec :

mysql -u root -p < mysqldump.sql

Sauvegarde d'image

Pour des raisons techniques, il est malheureusement impossible de faire des sauvegardes d'images de l'infra donnée par l'école. En effet, UrBackup n'a pas la possibilité de créer des images de partition en ext2.

Cependant, voici le déroulé d'une sauvegarde d'image :

Pour lancer une sauvegarde d'image, aller dans l'onglet États puis Sauvegarde image complète.

Ce type de sauvegarde est égal aux logiciels Ghost ou Clonezilla, ces images sont ensuite réutilisables pour restaurer un OS complètement via un live-cd fourni par UrBackup.

En allant dans l'onglet Activités, il est possible de voir l'avancement.

Sauvegarde de fichiers spécifiques

Lancer une sauvegarde manuellement

Pour lancer une sauvegarder manuellement, choisissez la machine puis sélectionner Sauvegarde de fichiers complète.

Une fois la sauvegarde lancée, vous pouvez vérifier son avancement en cliquant sur l’onglet Activités.

Dans l'onglet Sauvegarde il est possible de choisir la machine sur laquelle vous souhaiter restaurer des fichiers.

En temps normal, tous les fichiers sont sauvegardés, mais si vous souhaitez choisir un dossier spécifique à sauvegarder, vous pouvez en suivant le chapitre suivant.

Sous Windows, spécifier le path à sauvegarder

Sélectionner choisir manuellement les fichiers à sauvegarder.

Ici nous voulons sauvegarder notre site web intranet hébergé avec le serveyr web IIS.

La sauvegarde de fichiers est maintenant configurée sur cette machine, elle aura lieu manuellement ou automatiquement selon les règles définies sur le serveur.

Sous Linux, spécifier le path à sauvegarder dans le GUI

Rendez vous dans le GUI de urBackup puis dans Réglages. Choisissez la machine à modifier et spécifier le path de sauvegarde.

Dans notre exemple nous souhaitons sauvegarder la configuration de mailcow.

  • Redémarrer le serveur urBackup
systemctl restart urbackupsrv


Réglage des planifications des sauvegardes

Si vous souhaitez régler la planification des tâches de sauvegardes, rendez-vous dans l'onglet Réglages puis dans l'onglet Client.

L'argument de l'intervalle de sauvegarde est scindé en deux parties :

1-7   /    0-24

La première partie concerne les jours de la semaine :

  • Lundi : 1
  • Mardi : 2
  • Mercredi : 3 …. etc

La deuxième partie concerne les heures de la journée.

Exemple: Si vous souhaitez lancer les sauvegardes entre mercredi et jeudi, entre 0 et 04h00, voici l'argument : 3-4/0-04.

Réglage des planifications des archives

Si vous souhaitez régler la planification de l'archivage, rendez-vous dans l'onglet Réglages puis dans l'onglet Archive.

  • Dans Archiver tous les, renseigner le nombre de fois correspondant à la demande;
  • Dans Archives pour, renseigner le nombre de fois correspondant à la demande;
  • Dans l'intervalle d'archivage construisez l'argument correspondant à votre besoin :

*;*;*;* → (heure ; jour du mois ; mois ; jour de la semaine)

Selon la documentation de UrBackup voici les conditions attendues :

Exemple: Si vous souhaitez faire un archive tous les 1er du mois à 04h00, voici l'argument : 4;1;*;*.

  • Renseigner le type de sauvegarde que vous souhaitez
  • Ajouter la planification en cliquant sur Ajouter

Restauration de sauvegarde

De fichiers

Afin de restaurer un fichier, on navigue dans l'onglet Sauvegarde jusqu'au fichier souhaité. Une fois le fichier cible trouvé, sélectionner Restaurer.

Si on souhaite restaurer l’ensemble du répertoire Pictures, il est nécessaire de cliquer sur Restaurer un dossier vers un client.

Sur les machines Windows, une confirmation est demandée.

D'une image

Toute la puissance de UrBackup réside dans la possibilité de restaurer une machine via une image.
Cette technique se nomme BMR (Bare Metal Restore).
Le BMR est une technique de restauration où les données sont sauvegardées sous une forme telle que l'on peut récupérer une machine dans son entièreté et la faire redémarrer sans aucune installation préalable.

Pour cela il vous sera nécessaire de vous créer un media live CD avec l'ISO de UrBackup.

Création du live CD sur clé USB

Il est nécessaire d'avoir téléchargé l'iso sur le site de UrBackup : https://www.urbackup.org/download.html#restore_cd.

Une fois l'iso récupéré, utiliser un utilitaire comme https://rufus.ie/ pour graver le fichier sur une clé USB.

Démarrage du live CD

  • Booter sur la clé USB et choisir Start UrBackup Restore

  • Sélectionner la langue du clavier

  • UrBackup restore est maintenant lancé

  • Rechercher un serveur UrBackup sur votre réseau

    Assurez vous d'avoir autoriser UrBackup dans votre pare-feu.

  • Indiquer votre nom utilisateur et votre mot de passe

  • Choisir la machine à restaurer

  • Sélectionner le volume que vous souhaitez restaurer

  • Puis le disque dont vous voulez faire la restauration

  • Confirmer, la restauration démarre

Avancement sur le serveur UrBackup

  • Sur le GUI de UrBackup :

La restauration est terminée vous pouvez désormais redémarrer la machine sans la clé USB.

La machine va reprendre l'état identique par rapport à l'image.

Conclusion

Tout cela montre la puissance du logiciel UrBackup. Pour une PME/TPE ce logiciel gratuit et léger peut être très pratique. La perte de données devient quasi impossible, si les backups sont régulières et dupliquées sur d'autres serveurs.

Mes sources

wiki/linux/urbackup.txt · Dernière modification : 2023/04/26 19:56 de DEROUET Valentin