Aller au contenu

Mettre en place une sauvegarde à distance automatisée

Nous allons voir dans cet article comment mettre en place une sauvegarde automatique de votre serveur sur un serveur distant avec Rsync.

Créer un utilisateur sur le serveur distant

Connectez-vous sur le serveur distant et créer un nouvel utilisateur, par exemple « rsync_user ».

sudo adduser rsync_user

Modifier les permissions de façon à ce qu’il ait uniquement accès aux répertoires nécessaires.

sudo mkdir -p /path/to/allowed/directory
sudo chown rsync_user:rsync_user /path/to/allowed/directory

Si nécessaire, interdisez les connexions interactives pour cet utilisateur :

sudo usermod -s /bin/false rsync_user

Configurez ensuite l’authentification par clé ssh et copier la clé publique sur le serveur distant.

Vous pouvez tester la connexion SSH avec la commande suivante :
ssh -i ~/.ssh/id_rsa_rsync rsync_user@remote-server

Si tout est bien configuré, vous n’aurez pas besoin de saisir de mot de passe et vous pouvez passer à la suite.

Synchroniser les données via Rsync en ssh

La commande suivante permet de réaliser la sauvegarde en SSH :

rsync -avhz --delete --progress --log-file=rsync.log -e "ssh -i /home/rsync_user/.ssh/id_rsa_rsync" /chemin/repertoire/source/ rsync_user@[IP Serveur distant]:/chemin/repertoire/destination/

Descriptif des options utilisées :

  • -h : human-readable -> Les nombres dans les messages de sortie sont dans un format compréhensible par des humains
  • –progress : montre le progrès du transfert en cours
  • -a : mode archive
  • -v : augmente la verbosité
  • –delete : si des fichiers sont supprimés sur la source, ils seront supprimés également sur la destination
  • –log-file : ajoute un fichier de log
Partager sur :