Ajouter un système de sauvegarde automatique sur son serveur

sauvegarde serveur

Dans ce tutoriel vidéo (sommaire des tutos ici), nous allons voir comment ajouter un système de sauvegarde automatique (autrement dit Backup) sur notre serveur dédié.

Backup-manager est logiciel en ligne de commande qui permet de sauvegarder le contenu de certains dossiers quotidiennement, sous forme d’archives. Il est également capable d’envoyer ces sauvegardes sur un serveur distant via FTP ou SSH. Comme OVH propose un serveur FTP de backup avec ces offres pour les dédiés, nous allons l’utiliser pour sauvegarder tous les fichiers sensibles du serveur (fichier de configuration, base de données, email, site).


(Lien pour voir la vidéo sur Dailymotion ou télécharger la vidéo : installer d’un système de backup)

Installation de backup-manager

Pour installer ce logiciel, la commande « apt-get install backup-manager » est amplement suffisante. Durant l’installation, vous devrez répondre à certaine question pour commencer à configurer Backup-manager. Si vous vous trompez ce n’est pas grave puisqu’on va modifier manuellement la configuration pour ajouter le serveur FTP distant.

Configuration

Le fichier de configuration de backup-manager se situe dans /etc/backup-manager.conf et voici une liste non exhaustive des options intéressantes :

# /etc/backup-manager.conf
# Répertoire ou sont stockés vos backup
export BM_REPOSITORY_ROOT="/var/archives"
# Durée de vie max des archives
export BM_ARCHIVE_TTL="5"
# Format des archives (peut être aussi tar.gz)
export BM_TARBALL_FILETYPE="tar"
# Répertoire à sauvegarder
export BM_TARBALL_DIRECTORIES="/etc /home /var/lib/mysql /var/www /var/mail"
# Type de fichiers à exclure de la sauvegarde
export BM_TARBALL_BLACKLIST="/var/archives *.mp3 *.avi *.rar *.zip *.ogg *.sql
*.tgz *.mpg *.log *.7z"

# Configuration du FTP

# Méthode d'envoi
export BM_UPLOAD_METHOD="ftp"
# Login FTP
export BM_UPLOAD_FTP_USER="votre login"
# Mot de passe
export BM_UPLOAD_FTP_PASSWORD="votre mot de passe"
# Adresse du serveur FTP distant
export BM_UPLOAD_FTP_HOSTS="adresse du serveur (IP ou hostname)"

# Purge les archives trop anciennes :
export BM_UPLOAD_FTP_PURGE="true"
# Avec un délai de 5 jours :
export BM_UPLOAD_FTP_TTL="5"
# Destination d'upload sur le serveur FTP distant
export BM_UPLOAD_FTP_DESTINATION="/"
# Bonus : exécuter un script lorsque c'est fini
export BM_POST_BACKUP_COMMAND="/etc/votre_script"

N’hésitez pas à activer votre serveur FTP de backup proposé gratuitement par OVH avec l’achat d’un serveur dédié !

Une petite remarque au passage, vous pouvez vous connecter au serveur FTP de backup d’ovh qu’à partir du serveur dédié, il y a une vérification de l’adresse IP. C’est une sécurité qui fait que vous ne pouvez pas vous connecter sur votre serveur de backup à partir de filezilla sur votre PC par exemple.

Automatisation des backups

Dans les vieilles versions de Backup-Manager, le système lançait le script automatiquement. Maintenant il faut créer un fichier de configuration dans le dossier /etc/cron.daily pour que backup-manager se lance tous les jours :

#!/bin/sh
# cron script for backup-manager
test -x /usr/sbin/backup-manager || exit 0
/usr/sbin/backup-manager

N’oubliez pas de donner les droits d’exécution au script avec un chmod 751 /etc/cron.daily/votre_script.

N’hésitez pas à poser vos questions en commentaire, à partager ce billet sur Facebook/Twitter et à rejoindre la page du blog sur Facebook !

(Image à la une : Hard Disk)

31 commentaires ont été ajoutés, ajoutez le vôtre.

Vous pouvez laisser un commentaire, cependant je ne peux pas vous garantir qu'il sera modéré rapidement ou qu'il aura une réponse, faute de temps pour m'occuper du site.

  1. dudd

    re,

    voila j’ai trouvé la solution en tous cas pour moi ça marche pour tous ceux qui on un problème de transfert du backup vers le serveur ftp d’ovh utilisez cette commande ssh :

    commande ssh : modprobe ip_conntrack_ftp

    et ca marche ! (a réutiliser à chaque fois que vous redémarrer votre serveur)

    rip

  2. dudd

    Bonjour

    merci pour tous les vidéo vraiment très pédagogiques.

    au niveau de la sauvegarde, j’obtiens bien les archives, mais lors de l’envoie vers le ftp de sauvegarde j’ai :

    ##################################################################

    Erreur rapportée par backup-manager-upload pour la méthode « ftp », voir « /tmp/bmu-log.ZjHM0N ».

    ##################################################################

    Une idée?

  3. Jerome

    Bonsoir,

    J’ai suivi le tuto.Je commence à coincer au niveau du script backup-manager.Apres avoir copier le script et modifier avec chmod.Au moment ou j’execute le fichier il me retourne cet erreur: /etc/backup-manager.conf: line 480: unexpected EOF while looking for matching ` »‘.Que faire ?

    Merci d’avance

  4. Varin

    je vais essayer ceci, existe t il une commande pour « recharger la config » avec backuo-manager? ou le simple fait de modifier le fichier prend effet tout de suite?

  5. Varin

    Merci Alexis de ta réponse,

    J’ai également un serveur dédibox. mais l’ajout de la commande iptables ne change rien, je fois juste qu’il upload simplement le fichier .md5 (taille de 0 octet)

    et après j’ai la jolie erreur 🙂

    snif…

    • Madrzejewski Alexis

      Dans ce cas, essaye de modifier la ligne pour l’upload en mode passif dans la configuration. Active le s’il n’est pas activé ou désactive le s’il l’est déjà. D’après mes recherches, le problème semble venir de la.

  6. Varin

    Bonjour,

    Merci pour vos excellents tuto tout d’abord.

    Par contre, je rencontre un petit soucis avec backupmanager et iptables.
    J’ai configurer backupmanager pour qu’il envoie en ligne les archive.

    Lorsque je lance le backup, j’ai l’erreur suivante qui apparait : Can’t use an undefined value as a symbol reference at /usr/share/perl/5.10/Net/FTP/dataconn.pm line 54.

    le backup se fait, la connexion ftp aussi, cela bloque au moment de l’envoie des données… j’ai donc pensé que iptables y était pour quelque chose… et c’est effectivement lui, si je le déactive tout marche.

    la regle ftp iptables FTP:

    modprobe ip_conntrack_ftp

    # FTP Out
    iptables -t filter -A OUTPUT -p tcp –dport 20:21 -j ACCEPT

    # FTP In
    iptables -t filter -A INPUT -p tcp –dport 20:21 -j ACCEPT
    iptables -t filter -A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT
    echo « FTP ok »

    Merci de votre aide

    Serveur dédié dédibox

    • Madrzejewski Alexis

      Bonjour Varin,

      J’avais eu le même problème une fois, c’était à cause de l’option des ports passifs en FTP. Dans le fichier de configuration de Backupmanager, il y a une option « use passive port », il faut l’activer/désactiver, normalement ça règle le problème.
      Sinon, pour être tranquille, il faut carrément autoriser les connexions sortantes vers le FTP de backup (s’il est sécurisé comme celui d’ovh/online). Voici la configuration que j’ai chez un de mes serveurs Online :

      iptables -t filter -A INPUT -p tcp -s dedibackup-vit.online.net -j ACCEPT
      iptables -t filter -A OUTPUT -p tcp -d dedibackup-vit.online.net -j ACCEPT

  7. dotMastaz

    La réponse est dans les premiers commentaires de Tnoy et frans2526
    , merci !