Sauvegarde automatique des données de GEPI

Documents pareils
Maintenir Debian GNU/Linux à jour

Table des matières Hakim Benameurlaine 1

Projet Administration Réseaux

Serveur Linux : FTP. Mise en place d un service FTP sous Linux. Bouron Dimitri 20/04/2014

Installation d'un serveur sftp avec connexion par login et clé rsa.

[ GLPI et OCS pour Gentoo 2006] ArtisanMicro. Alexandre BALMES

Le protocole FTP (File Transfert Protocol,

GLPI OCS Inventory. 1. Prérequis Installer un serveur LAMP : apt-get install apache2 php5 libapache2-mod-php5 apt-get install mysql-server php5-mysql

La sécurité avec SSH. Atelier cctld Dakar, Sénégal. Hervey Allen

Afin d'éviter un message d'erreur au démarrage du service Apache du type :

ftp & sftp : transférer des fichiers

Mise en place d'un serveur FTP avec vsftpd / pureftpd sous netbsd 3.1. Compte-rendu

PPe jaune. Domingues Almeida Nicolas Collin Leo Ferdioui Lamia Sannier Vincent [PPE PROJET FTP]

Installation et mise en œuvre de OpenSSH sous AIX 5L

Serveur de sauvegarde à moindre coût

Anas Abou El Kalam Sécurité SSH SSH

Installation d'un serveur FTP géré par une base de données MySQL

TP n 2 : Installation et administration du serveur ProFTP. Partie 1 : Fonctionnement du protocole FTP (pas plus de 15min)

Architecture de la plateforme SBC

Note : Ce tutoriel a été réalisé sur GNU/Linux (Ubuntu) avec un serveur LAMP installé en local.

SSH, le shell sécurisé

installer_un_serveur_debian - Documentation Ubuntu Francophone Installation complète d'un serveur web sous Debian 6.0

Client Kiwi Backup : procédures d'installation et de mise à jour. Gilles Arnoult, Clément Varaldi

Microsoft OSQL OSQL ou l'outil de base pour gérer SQL Server

Les commandes relatives aux réseaux

Installer un gestionnaire de parc GLPI sous Linux

Procédures informatiques administrateurs Création d un serveur FTP sous Linux

Linux et le Shell. Francois BAYART. Atelier du samedi 20 Novembre

Serveur de sauvegardes incrémental

Bon ben voilà c est fait!

Antisèches Informatiques. Configuration et utilisation de openssh. Sommaire. Openssh pour linux. Installation. 1 sur 24 04/06/ :04

Installation du transfert de fichier sécurisé sur le serveur orphanet

Tuto 2 : Configuration Virtual box, Configuration et installation du serveur XiBO

Installation des outils OCS et GLPI

SSH et compagnie : sftp, scp et ssh-agent

I. Linux/Unix/UnixLike

Tutoriel Création d une source Cydia et compilation des packages sous Linux

Compte rendu d'activité PTI n 2

Documentation utilisateur, manuel utilisateur MagicSafe Linux. Vous pouvez télécharger la dernière version de ce document à l adresse suivante :

Projet de mise en œuvre d un serveur ftp sur serveur dédié

NRPE. Objectif. Documentation. Procédures

Atelier individuel. Linux 101. Frédérick Lefebvre & Maxime Boissonneault frederick.lefebvre@calculquebec.ca U. Laval - Janv. 2014

Les différentes méthodes pour se connecter

Tutoriel compte-rendu Mission 1

FreeNAS Shere. Par THOREZ Nicolas

Serveur d application WebDev

TP Sur SSH. I. Introduction à SSH. I.1. Putty

Administration Réseau sous Ubuntu SERVER Serveur FTP. Installation d un serveur FTP (File Transfert Protocol) sous Ubuntu Server 12.

BTS SIO Dossier BTS. PURCHLA Romain

Configuration matériel. Tâche 2 : Installation proprement dite de l application sur un serveur de test virtualisé sous VmWare Workstation.

INSTALLATION NG V2.1 D OCS INVENTORY. Procédure d utilisation. Auteur : GALLEGO Cédric 23/10/2014 N version : v1

Serveur proxy Squid3 et SquidGuard

page discussion voir le texte source historique Documentation

Le service FTP. M.BOUABID, Page 1 sur 5

GUIDE D INSTALLATION. Portaneo Enterprise Portal version 4.0

Cours 420-KEG-LG, Gestion de réseaux et support technique. Atelier No2 :

Installation UpdatEngine serveur (CentOs apache2 / MySQL)

il chiffrer les flux d'authentification et les flux de données il n'y a pas de soucis d'ouverture de ports avec des modes actif/passif à gérer

Un serveur web, difficile?

OCS Inventory & GLPI

[Serveur de déploiement FOG]

Installation d ORACLE 10g sous Debian Etch

1. Utilisation PuTTY openssh WinSCP

Services Réseau SSH. Michaël Hauspie. Licence Professionnelle Réseaux et Télécommunications

Atelier Le gestionnaire de fichier

L installation a quelque peu changée depuis les derniers tutos, voici une actualisation.

KAJOUT WASSIM INTERNET INFORMATION SERVICES (IIS) 01/03/2013. Compte-rendu sur ISS KAJOUT Wassim

Projet Evolution. Projet Evolution Fleury Plaideau Page 1

BTS SIO SISR3 TP 1-I Le service Web [1] Le service Web [1]

Contrôle de la DreamBox à travers un canal SSH

Projet Semestre2-1SISR

II- Préparation du serveur et installation d OpenVpn :

Installation d OwnCloud 8.0 sous Debian Avec connexion des utilisateurs active directory et mise en place de HTTPS

Service WEB, BDD MySQL, PHP et réplication Heartbeat. Conditions requises : Dans ce TP, il est nécessaire d'avoir une machine Debian sous ProxMox

Manuel des logiciels de transferts de fichiers File Delivery Services

Situation professionnelle n X

Introduction à Linux (pour le HPC) «Linux 101» Présentation :

Sauvegarde sous MAC avec serveur Samba

Installation de Zabbix

TP LINUX : MISE EN PLACE DU SERVEUR DE MESSAGERIE QMAIL

Sommaire. Promo 39 B WINDOWS 2003 SERVER PART 1

WINDOWS SERVER 2003-R2

[GLPI & OCS Inventory] Yann VANDENBERGHE. AFPA Lomme

FORMATION : Etudiante en deuxième année de BTS Informatique de Gestion. Du 1 er Mars au 16 Avril 2010

Installer un serveur web de développement avec VirtualBox

Serveur de messagerie sous Debian 5.0

Aide-Mémoire unix. 9 février 2009

PPE Installation d un serveur FTP

Live box et Nas Synology

Secure SHell. Faites communiquer vos ordinateurs! Romain Vimont ( R om)

Maintenance et gestion approfondie des Systèmes d exploitation Master 2 SILI. Année universitaire David Genest

MANUEL UTILISATEUR KIWI BACKUP V 3

Installation 1K-Serveur

Transférer des fichiers à l aide de WinSCP et 2 contextes d utilisation dans des sites SPIP avec FCK editor

HowTo Installer egroupware 1.2 sur SME Serveur 7.0

Réaliser un inventaire Documentation utilisateur

Installation personnalisée d'oracle 10g

Transcription:

Sauvegarde automatique des données de GEPI Sommaire: 1. Sauvegarder en utilisant des scripts a) Sauvegarde automatique de gepi b) Création de l'utilisateur de sauvegarde c) Automatisation de la sauvegarde d) Envoi des sauvegardes à un serveur distant e) Restauration des sauvegardes i. Restauration de la base MySQL ii. Restauration du répertoire «documents» 2. Installation d'un serveur FTP a) Installation de vsftpd b) Création d utilisateur(s) virtuel 3. Installation de backup-manager a) Prérequis b) Installation de backup-manager c) Configuration de backup-manager d) Automatisation des sauvegardes En période de conseil de classe, la sollicitation de GEPI est très importante et il est fondamental de faire des sauvegardes très régulières de la base MySQL. Cette tâche indispensable est cependant fastidieuse, c'est pourquoi ce document propose une méthode pour sauvegarder les données puis les uploader sur un autre serveur via FTP de manière totalement automatique. Il est donc nécessaire de posséder un serveur GEPI mais aussi une autre machine faisant office de serveur de sauvegarde, que nous appellerons srvsavgepi. Dans un premier temps, nous expliquerons comment gérer les sauvegardes entièrement à l'aide de scripts. Dans la deuxième partie, nous détaillerons comment installer et configurer un serveur FTP à l'aide du logiciel vsftp. Dans la dernière partie nous verrons qu'il est possible d'utiliser le logiciel backup-manager pour simplifier la mise en oeuvre. Remarque : srvftp peut fonctionner sous Windows, avec FilezillaServer par exemple, mais nous ne détaillerons pas cette installation. Nous ne donnerons le mode opératoire que pour vsftpd. Sauvegarde automatique des données 1 / 13

1. Sauvegarder en utilisant des scripts Description Identifiants de la doc Vos identifiants Serveur gepi Adresse du serveur gepi Mot de passe root Utilisateur du serveurgepi Mot de passe de gepuser Mot de passe du root de Mysql Utilisateur Mysql administrateur de gepi Mot de passe de mgepuser Utilisateur de sauvegarde Mot de passe de sauveur srvgepi adresseip mdp0 gepuser mdp1 mdp2 mgepuser mdp3 sauveur mdp4 a) Sauvegarde automatique de gepi Comme gepi ne propose que des sauvegardes «manuelles», nous allons mettre en place une sauvegarde automatisée de la base sql gepi et du dossier «documents» (lié au cahier de texte) par l'intermédiaire du crontab d'un utilisateur dédié et la commande de sauvegarde mysqldump (intégrée à mysql). Puis par sftp nous transmettrons ces sauvegardes sur un serveur distant (mais du réseau interne par sécurité). L'avantage de cette méthode est qu'il n'y a rien à installer de plus sur le serveur, L'inconvénient est que comprendre les scripts n'est pas très facile. b) Création de l'utilisateur de sauvegarde Se connecter sur srvgepi en tant que gepuser puis passer en root (avec su). La commande adduser permet de créer un utilisateur avec espace personnel : adduser Saisir son nom : sauveur Puis saisir deux fois son mot de passe : mdp4 Laisser les renseignements suivants vides, taper «o» puis valider. L'utilisateur «sauveur» a été créé. Se déconnecter de la session root par la commande «exit», puis de même de l'utilisateur gepuser. Se connecter en tant que sauveur, vérifier que vous êtes bien dans le répertoire /home/sauveur/ à l'aide de la commande pwd puis y créer deux dossiers backup et backuph ; mkdir backup backuph backup va contenir les sauvegardes journalières de la base de donnée gepi et celles du dossier Sauvegarde automatique des données 2 / 13

«documents». backuph va contenir les sauvegardes heure par heure de la base de données gepi (sans fermeture des tables). c) Automatisation de la sauvegarde mysqldump effectue une sauvegarde de la base gepi, l'option -x permet de fermer les tables avant de sauvegarder, puis les relance. Mais il faut que l'utilisateur mgepuser ait le droit RELOAD : mysqladmin -u root -pmdp2 > GRANT RELOAD ON *.* TO mgepuser; > quit; Nous allons utiliser le crontab de sauveur pour planifier diverses taches régulières (pour employer un langage ouinedozien) : Toujours en tant que sauveur: crontab -e Normalement c'est nano qui s'ouvre mais au cas où vous vous retrouviez devant une fenêtre de vi, voici quelques commandes utiles : i pour insérer du texte echap pour entrer les commandes (sauvegarder, quitter...) :wq pour quitter en enregistrant :q! : pour forcer la sortie sans rien modifier Ajouter les lignes suivantes à crontab : 0 1 * * * mysqldump -u mgepuser -pmdp3 -x -e -B gepi > /home/sauveur/backup/gepi`date +\%d\%m\%y`.sql && gzip /home/sauveur/backup/gepi`date +\%d\%m\%y`.sql 20 1 * * 1 tar cvfz /home/sauveur/backup/documents`date +\%d\%m\%y`.tar.gz /var/www/gepi/documents 30 1 * * * find /home/sauveur/backup -type f -mtime +15 xargs -r -n 10 rm 40 1 * * * sftp -b cmdgepi recepteur@ip_srvsavgepi 30 * * * * mysqldump -u mgepuser -pmdp3 -e -B gepi > /home/sauveur/backuph/hgepi`date +\%H\%d\%m\%Y`.sql && gzip /home/sauveur/backuph/hgepi`date +\%H\%d\%m\%Y`.sql 45 1 * * * find /home/sauveur/backuph -type f -mtime +1 xargs -r -n 10 rm 55 1 * * * sftp -b cmdgepih recepteur@ip_srvsavgepi Explications : Les différents champs de crontab sont : minute (0 à 59) ; heure (0 à 23) ; jour du mois (1 à 31) ; mois (1 à 12 ou un nom comme jan, feb...) ; jour de la semaine (0 à 6 : 0 = Dimanche, 1 = Lundi... ou mon, tue...) ; commande telle qu'elle serait saisie sous shell. mysqldump effectue une sauvegarde de la base gepi tous les jours à 01h00 et la place dans le dossier backup ainsi qu'une sauvegarde toutes les heures, mais sans fermer les tables, placée dans le dossier backuph. l'option -p et le mot de passe doivent être accolés. La partie `date +%H%d%m%Y` rajoute au nom de fichier créé l'heure, le jour, le mois et l'année de création du fichier. Comme la crontab interprète le «%» comme une fin de commande, on rajoute un «\» avant chaque «%». À 01h20 le lundi, le contenu du dossier «documents» est compressé dans le dossier backup. La troisième ligne permet de trouver tous les fichiers de «backup» ayant plus de quinze jours et de les supprimer à 01h30 tous les jours. Puisque nous ne pouvons passer directement les commandes internes de sftp à son appel, à 01h40 à la quatrième ligne, nous utilisons l option spéciale -b qui permet de spécifier un fichier batch (ici cmdgepi et cmdgepih). Ce dernier n est rien d'autre que l ordonnance des commandes qui seraient entrées manuellement en situation normale. IP_srvsavgepi est l'adresse IP ou le nom du serveur qui recevra les sauvegardes. Sauvegarde automatique des données 3 / 13

recepteur est le nom du compte utilisateur qui recevra les sauvegardes. d) Envoi des sauvegardes à un serveur distant Installation du serveur distant (Debian évidemment), création d'un utilisateur recepteur et de deux dossiers sbackup et sbackuph pour recevoir les sauvegardes. La machine faisant office de serveur FTP, si elle ne remplit que cette tâche, n'a pas besoin d'être puissante : un simple pentium et 64 Mo de RAM seront suffisants, ainsi bien sûr qu'une carte réseau. La première étape consiste à y installer un système d'exploitation (référez vous à http://gepi.mutualibre.org/download/install_sarge_et_install_gepi.pdf pour l'installation de Debian), puis de créer un utilisateur recepteur et de deux dossiers sbackup et sbackuph pour recevoir les sauvegardes. Description Identifiants de la doc Vos identifiants Serveur distant Adresse IP du serveur distant Utilisateur recepteur du serveur distant mot de passe de recepteur srvsavgepi IP_srvsavgepi recepteur mdp5 Configuration de ssh (inspirée http://www.aqra.ca/article.php3?id_article=47) Openssh est déjà installé (il s'installe avec le système de base). Nous allons créer un paire de clé privée/publique sur srvgepi. Nous lui attribuerons une passphrase vide de manière à pouvoir se connecter automatiquement à la demande sur srvsavgepi, mais uniquement au compte recepteur. Saisir en tant que sauveur sur srvgepi : ssh-keygen -t dsa Les lignes suivantes s'affichent : Generating public/private dsa key pair. Enter file in which to save the key (/home/sauveur/.ssh/id_dsa): laissez par défaut Created directory '/home/sauveur/.ssh'. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/sauveur/.ssh/id_dsa. Your public key has been saved in /home/sauveur/.ssh/id_dsa.pub. The key fingerprint is:... Il suffit maintenant de créer, s'il n'existe pas, un repertoire./ssh dans /home/recepteur de srvsavgepi et d'y créer un fichier nommé authorized_keys qui contiendra la clé contenue dans id.dsa.pub du dossier./ssh de sauveur. Sauvegarde automatique des données 4 / 13

Il est vivement déconseillé de recopier la clé à la main. Par ftp coller id.dsa.pub dans le dossier./ssh de recepteur, puis renommer ce fichier en authorized_keys (rajouter une ligne vierge à la fin du fichier pour d'autres clés éventuelles). Tester à partir du serveurgepi, en tant que sauveur : ssh recepteur@ip_srvsavgepi Si tout va bien, vous êtes alors connecté sur votre serveur distant au compte recepteur, sans avoir saisi le mot de passe de celui-ci. Nous avons créé une liaison sécurisée entre le compte sauveur et le compte recepteur et uniquement entre ses deux comptes. Une passphrase non-vide aurait garanti une sécurité encore meilleure face à certaines attaques mais comme nous travaillons au sein de notre réseau privé, le risque est extrêmement minime. Édition des commandes cmdgepi et cmdgepih Sur srvgepi, en tant que sauveur, taper : nano cmdgepi Y inserer le texte : put /home/sauveur/backup/*.*.gz /home/recepteur/sbackup exit Enregistrer en quittant (CTRL +X). nano cmdgepih put /home/sauveur/backuph/*.*.gz /home/recepteur/sbackuph exit Enregistrez en quittant (CTRL +X). Il faut maintenant donner le droit d'exécution à ces deux fichiers, taper: chmod u+x cmdgepi chmod u+x cmdgepih e) Restauration des sauvegardes i. Restauration de la base MySQL On commence par dézipper la sauvegarde voulue : gunzip /home/sauveur/backup(h)/gepiquejeveux.sql.gz Remarque : Si la commande gunzip n'est pas reconnu, saisissez en tant que root apt-get install gunzip exit On se connecte en tant que sauveur et on saisit : mysql -u mgepuser -pmdp3 >DROP DATABASE GEPI; >quit; Sauvegarde automatique des données 5 / 13

On vient de supprimer la base de donnée de GEPI. Saisir : mysql -u mgepuser -pmdp3 < /home/sauveur/backup(h)/gepiquejeveux.sql Puis se connecter en tant que root (par su) pour relancer le serveur mysql: /etc/init.d/mysql restart exit La base est restaurée. ii. Restauration du répertoire «documents» Se connecter en tant que sauveur puis taper: cd /var/www/gepi En tant que root (par su), taper: tar xvzf /home/sauveur/backup/documentsquejeveux.tar.gz Par sécurité: chown -R www-data /var/www/gepi/documents exit Le répertoire documents est restauré. Rappel des identifiants : description Serveur gepi Adresse du serveur gepi Mot de passe root Utilisateur du serveurgepi Mot de passe de gepuser Mot de passe du root de Mysql Utilisateur Mysql administrateur de gepi Mot de passe de mgepuser Utilisateur de sauvegarde Mot de passe de sauveur Serveur distant Identifiants de la doc srvgepi adresseip mdp0 gepuser mdp1 mdp2 mgepuser mdp3 sauveur mdp4 srvsavgepi Vos identifiants Sauvegarde automatique des données 6 / 13

Adresse IP du serveur distant IP_srvsavgepi Utilisateur recepteur du serveur distant recepteur mot de passe de recepteur mdp5 Dans la méthode précédente, le transfert se fait par SSH. Nous allons voir une deuxième possibilité où le transfert se fait via FTP et où l'on utilise un logiciel plutôt que des scripts. 2. Installation d'un serveur FTP a) Installation de vsftpd La machine faisant office de serveur FTP, si elle ne remplit que cette tâche, n'a pas besoin d'être puissante : un simple pentium et 64 Mo de RAM seront suffisants, ainsi bien sûr qu'une carte réseau. La première étape consiste à y installer un système d'exploitation (référez vous à http://gepi.mutualibre.org/download/install_sarge_et_install_gepi.pdf pour l'installation de Debian). Une fois ceci fait, il convient d'installer vsftpd sur srvsavgepi. Passons en root (commande «su») puis : apt-get install vsftpd Commençer par sauvegarder les fichiers de configuration de vsftpd ce qui permettra, en cas de fausse manipulation, de pouvoir les restaurer : cp /etc/vsftpd.conf /etc/vsftpd.conf.old cp /etc/pam.d/vsftpd /etc/pam.d/vsftpd.old Par commodité, regrouper les fichiers de configuration dans un même dossier : mkdir /etc/vsftpd cd /etc/vsftpd b) Création d utilisateur(s) virtuel Vsftpd utilise le mécanisme d'authentification PAM qui nécessite une base de données au format «Berkeley db». Pour faire fonctionner cela nous devons installer un nouveau paquet : apt-get install libdb3-util Nous allons maintenant générer le fichier db, à partir d un fichier texte contenant les couples identifiant mot de passe par paire de ligne. Taper : nano vsftpd.txt gepiftp ftppasswd Rentrer sur la première ligne l identifiant et sur la deuxième le mot de passe : Sauvegarde automatique des données 7 / 13

Il est indispensable que le fichier se termine par un retour à la ligne. Il ne doit contenir aucun commentaire. Remarque : Si vous en avez le besoin vous pouvez créer plusieurs utilisateurs. Il suffit simplement de rajouter, dans le fichier, des paires de ligne identifiant mot de passe. Quitter nano en enregistrant le fichier vsftpd.txt (appui simultané sur CTRL et X) puis le convertir au format db : db3_load -T -t hash -f vsftpd.txt vsftpd.db Par sécurité, modifier les permissions sur ce fichier : chmod 600 vsftpd.db Créer maintenant un fichier «vsftpd.pam» qui dira à PAM d'utiliser la base de données que l on vient de générer pour authentifier les utilisateurs : nano vsftpd.pam Y copier les lignes ci-dessous : auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd Enfin quitter nano en enregistrant (CTRL+X). Finalement, pour que PAM prenne en compte ce fichier, il faut le copier dans son dossier de configuration : cp vsftpd.pam /etc/pam.d/vsftpd PAM dispose maintenant de tous les éléments nécessaires à l authentification. L utilisateur «gepiftp» (ou les utilisateurs si vous en avez créés plusieurs) est en fait un utilisateur virtuel qui va être représenté par un utilisateur système linux que nous choisissons d appeler «ftpuser». Nous devons donc créer cet utilisateur sur le système ainsi que son groupe primaire que nous choisissons d appeler «ftp» : groupadd ftp useradd -g ftp -d /home/ftp/ftpuser/ ftpuser Créer le répertoire personnel de cet utilisateur : mkdir -p /home/ftp/ftpuser Nous allons sécuriser le système en faisant en sorte que ce répertoire personnel n appartienne pas à l utilisateur et qu il ne puisse pas y écrire : chown root.ftp ~ftpuser/ chmod 2750 ~ftpuser/ Remarque : Le setgid permet de s assurer que les fichiers et dossiers qui seront créés dans le répertoire appartiendront tous au groupe ftp. c) Configuration du démon vsftpd Le fichier /etc/vsftpd.conf contient toutes les options de configuration générale. Nous vous Sauvegarde automatique des données 8 / 13

laissons le soin de détailler toutes les possibilités qui y sont offertes et nous vous proposons de l éditer pour qu il corresponde à celui ci-dessous : listen=yes anonymous_enable=no local_enable=yes write_enable=no anon_upload_enable=no anon_mkdir_write_enable=no anon_other_write_enable=no guest_enable=yes guest_username=ftpuser chroot_local_user=yes secure_chroot_dir=/var/run/vsftpd user_config_dir=/etc/vsftpd/vsftpd_user_conf max_clients=20 max_per_ip=2 pam_service_name=vsftpd Créer maintenant le répertoire vsftpd_user_conf qui va permettre de gérer les droits de chaque utilisateur virtuel : mkdir vsftpd_user_conf/ Créer un fichier pour l utilisateur virtuel «gepiftp» : nano vsftpd_user_conf/gepiftp anon_world_readable_only=no write_enable=yes anon_upload_enable=yes anon_mkdir_write_enable=yes anon_other_write_enable=yes local_root=gepiftp local_umask=022 Pour le moment l utilisateur virtuel a le droit d écrire du point de vue de vsftpd, par contre il ne les a pas du point de vue du système de fichier et il ne pourra donc rien faire (vsftpd n est qu un logiciel et il ne peut pas outrepasser les réglages système). Créer donc un répertoire spécifique dans lequel gepiftp pourra écrire : cd ~ftpuser && mkdir -p gepiftp/upload chmod 2750 gepiftp && chmod 770 gepiftp/upload Enfin relançer le serveur ftp pour qu il prenne en compte toutes les modifications : /etc/init.d/vsftpd restart La configuration du serveur FTP est maintenant terminée. Celui-ci possède un utilisateur «gepiftp» se connectant grâce au mot de passe «ftppasswd». Cet utilisateur est confiné dans le répertoire /home/ftp/ftpuser/gepiftp qui apparaîtra pour lui comme étant la racine et dont il ne pourra pas sortir. Cela permet d être sûr qu il ne pourra pas porter atteinte au système. D autre part il ne peut Sauvegarde automatique des données 9 / 13

pas uploader de fichiers à la racine du ftp (/home/ftp/ftpuser/gepiftp) mais seulement dans le répertoire /home/ftp/ftpuser/gepiftp/upload. Cela permet plus de souplesse en cas de délégation du contrôle du FTP à une autre personne. Rappelons que FTP est un des plus vieux protocoles existants mais aussi un des moins sécurisés puisque les mots de passe et les données y circulent en clair. Pour pallier à cela, vsftpd permet de faire du FTP over SSL, ce qui rajoute une couche de chiffrement. Les plus inquiets pour la sécurité pourront se tourner vers une solution encore plus sécurisée : le serveur SFTP inclus à openssh qui permet d émuler un serveur FTP en utilisant les commandes SCP et SSH2. Néanmoins, considérant que les échanges vont se faire entre deux machines de notre réseau local nous ne voyons pas l intérêt d alourdir la procédure en rajoutant cela (si vous souhaitez faire cela, tournez vous vers la première partie de la documentation). La plupart des FAI fournissant gratuitement un accès FTP il pourrait être tentant de l utiliser, cela permettant de ne pas mobiliser de machine supplémentaire pour y faire fonctionner vsftpd. Dans ce cas, les données de GEPI vont transiter par Internet et il convient alors de les chiffrer. Mais très peu (voire aucun) de FAI fournissent un FTP supportant le cryptage. Nous ne pouvons donc que vous déconseiller cette solution. 3. Installation de backup-manager a) Prérequis Pour une fois nous n allons pas installer ce paquet grâce à l outil apt. En effet, la très grande stabilité de Debian est basée sur des tests rigoureux et donc longs des logiciels. De plus, une fois qu une distribution de Debian est parue, les seules mises à jour de paquets autorisées sont celles relatives à la sécurité. Cela a pour conséquence de ne pas mettre à la disposition des utilisateurs les logiciels dans leurs versions les plus récentes, mais la stabilité est à ce prix! Ainsi, à l heure où j écris ce document (12 août 2006), la version de backup-manager intégrée à Debian stable est 0.5.7-1. Or la prise en charge des bases MySQL, via mysqldump, n est disponible qu à partir de 0.5.9a. Cela sera sans doute réglé avec la publication de Debian GNU/Linux 4.0 prévue en décembre 2006, mais en attendant nous allons devoir compiler la dernière version stable de backup-manager. Il nous est donc nécessaire de disposer de make : apt-get install make Backup-manager nécessite que les paquets gettext et perl soient installés : apt-get install gettext perl Remarque : normalement perl est installé avec le système de base, il est donc normal que vous obteniez comme message «perl est déjà la plus récente version disponible.». Enfin, backup-manager propose plusieurs possibilités de compression des données, notamment bzip2 qui est celle permettant le meilleur rendement : apt-get install bzip2 b) Installation de backup-manager Se plaçer dans le répertoire personnel de root : cd /root Sauvegarde automatique des données 10 / 13

Puis récupérer la dernière version stable de backup-manager (0.6.2 à l heure où j écris ces lignes) : wget http://www.backup-manager.org/download/backup-manager-0.6.2.tar.gz Décompresser les sources : tar -zxvf backup-manager-0.6.2.tar.gz Installer backup-manager : cd backup-manager-0.6.2 make install cp /usr/share/backup-manager/backup-manager.conf.tpl /etc/backup-manager.conf Enfin, supprimer les sources : cd.. && rm backup-manager-0.6.2.tar.gz && rm rvf backup-manager-0.6.2 c) Configuration de backup-manager Toute la configuration se fait via le fichier /etc/backup-manager.conf : nano /etc/backup-manager.conf Ce fichier est très documenté, je vous laisse le soin de détailler les possibilités qui y sont offertes et je vous propose de l éditer pour qu il corresponde à celui ci-dessous : export BM_REPOSITORY_ROOT="/var/archives" export BM_REPOSITORY_SECURE="true" export BM_REPOSITORY_USER="root" export BM_REPOSITORY_GROUP="root" export BM_ARCHIVE_TTL="15" export BM_ARCHIVE_PURGEDUPS="true" export BM_ARCHIVE_PREFIX="$HOSTNAME" export BM_ARCHIVE_METHOD="tarball-incremental mysql" export BM_TARBALL_NAMEFORMAT="short" export BM_TARBALL_FILETYPE="tar.bz2" export BM_TARBALL_DUMPSYMLINKS="false" export BM_TARBALL_DIRECTORIES="chemin_complet_vers_le_code_gepi" export BM_TARBALLINC_MASTERDATETYPE="weekly" export BM_TARBALLINC_MASTERDATEVALUE="1" export BM_MYSQL_DATABASES="base_mysql_gepi" export BM_MYSQL_ADMINLOGIN="mgepuser" export BM_MYSQL_ADMINPASS="mdp3" export BM_MYSQL_HOST="localhost" export BM_MYSQL_PORT="3306" export BM_MYSQL_FILETYPE="bzip2" export BM_UPLOAD_METHOD="ftp" export BM_UPLOAD_FTP_USER="gepiftp" export BM_UPLOAD_FTP_PASSWORD="ftppasswd" export BM_UPLOAD_FTP_HOSTS="IP_srvsavgepi" export BM_UPLOAD_FTP_PURGE="false" export BM_UPLOAD_FTP_DESTINATION="/upload" export BM_LOGGER="true" export BM_LOGGER_FACILITY="user" d) Automatisation des sauvegardes Sauvegarde automatique des données 11 / 13

Nous allons gérer cela grâce à un script shell : nano /etc/backup-manager.sh #!/bin/sh test -x /usr/sbin/backup-manager exit 0 /usr/sbin/backup-manager Régler ensuite les droits sur ce fichier : chmod 700 /etc/backup-manager.sh Automatiser le lancement du script à l aide du démon cron : crontab -e Rajouter la ligne suivante pour que le script se lance tous les jours à 3h : 0 3 */1 * * /etc/backup-manager.sh Pour tester le fonctionnement, il suffit de lancer le script à la main : /etc/backup-manager.sh Puis de vérifier la présence des sauvegardes dans /var/archives et sur srvftp : Libre à vous de choisir la méthode que vous préférez. La première est notre préférée car elle est plus sécurisée vu que le transfert se fait via SSH et qu'elle n'installe aucun paquet supplémentaire sur le serveur. Elle est cependant plus complexe à appréhender que la seconde qui fait appel à des logiciels simples à configurer. Sauvegarde automatique des données 12 / 13

D.Pailler B.Castagnetto Document placé sous licence GFDL Sauvegarde automatique des données 13 / 13