<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>backup on head /dev/log</title>
    <link>https://www.lamy.im/tags/backup/</link>
    <description>Recent content in backup on head /dev/log</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <lastBuildDate>Sat, 12 Sep 2015 22:53:22 +0000</lastBuildDate><atom:link href="https://www.lamy.im/tags/backup/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>burp : la sauvegarde simple qui juste marche</title>
      <link>https://www.lamy.im/posts/burp-la-sauvegarde-simple-qui-juste-marche/</link>
      <pubDate>Sat, 12 Sep 2015 22:53:22 +0000</pubDate>
      
      <guid>https://www.lamy.im/posts/burp-la-sauvegarde-simple-qui-juste-marche/</guid>
      <description>Cette fois, je vais parler sauvegarde avec le logiciel burp. Je vous laisse vous référer au site officiel pour en apprendre plus sur les raisons du démarrage de ce projet par Graham Keeling. Burp est basé sur librsync, ce qui lui permet d’être très efficace sur les sauvegardes différentielles.
Des points intéressants de ce logiciel sont que le client fonctionne sur linux/mac/windows, qu’il est très simple à mettre en place. Par exemple, le client et le serveur sont dans le même binaire, il y a très peu de dépendances etc.</description>
      <content>&lt;p&gt;Cette fois, je vais parler sauvegarde avec le logiciel &lt;strong&gt;burp&lt;/strong&gt;. Je vous laisse vous référer au &lt;a href=&#34;http://burp.grke.org&#34;&gt;site officiel&lt;/a&gt; pour en apprendre plus sur les raisons du démarrage de ce projet par Graham Keeling. Burp est basé sur librsync, ce qui lui permet d’être très efficace sur les sauvegardes différentielles.&lt;/p&gt;
&lt;p&gt;Des points intéressants de ce logiciel sont que le client fonctionne sur linux/mac/windows, qu’il est très simple à mettre en place. Par exemple, le client et le serveur sont dans le même binaire, il y a très peu de dépendances etc.&lt;/p&gt;
&lt;p&gt;Autre point important pour mon cas d’usage qui comprend des ordinateurs portables qui ne sont pas toujours présents sur le réseau: c’est le client qui vient demander au serveur s’il est temps pour lui de se sauvegarder.&lt;/p&gt;
&lt;p&gt;Concrètement, il s’agit d’un cron qui se lance régulierement pour interroger le serveur. Selon la politique de sauvegarde définie et la date de la dernière sauvegarde, le serveur autorise la sauvegarde ou non. Le script de calcul coté serveur est bien sur configurable et modifiable.&lt;/p&gt;
&lt;p&gt;Je vais rapidement dérouler l’installation et la sauvegarde du premier client sur Debian.&lt;/p&gt;
&lt;p&gt;Installation du server et du client :&lt;br&gt;
&lt;code&gt;apt install burp&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Sur le serveur, autoriser le démon à se lancer en mettant &lt;strong&gt;RUN=yes&lt;/strong&gt; dans &lt;strong&gt;/etc/default/burp&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;La configuration du serveur se fait dans &lt;strong&gt;/etc/burp/burp-server.conf&lt;/strong&gt;&lt;br&gt;
L’ajout d’un client se passe simplement, il faut une configuration sur le serveur et une sur le client avec un mot de passe commun.&lt;/p&gt;
&lt;p&gt;Exemple sur le serveur dans &lt;strong&gt;/etc/burp/clientconfdir/client_test&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;password = passbkp&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Exemple sur le client dans &lt;strong&gt;/etc/burp/burp.conf&lt;/strong&gt;&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;mode = client 
port = 4971
server = 10.0.0.1
password = passbkp
cname = client_test
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Bien sur il ne faut pas oublier de modifier le reste du fichier pour limiter le débit si necessaire et ajuster les inclusions et exclusions.&lt;/p&gt;
&lt;p&gt;A la première communication, le serveur va verifier le mot de passe puis signer le certificat X509 généré par le client, cela servira à chiffrer les communications par la suite.&lt;/p&gt;
&lt;p&gt;un rapide &lt;code&gt;burp -a b&lt;/code&gt; pour lancer la premiere sauvegarde, puis l’ajout de &lt;code&gt;burp -a t&lt;/code&gt; en cron et c’est fini !&lt;/p&gt;
&lt;p&gt;Après la première sauvegarde, cela va assez vite car burp inventorie les metadonnées des fichiers à sauvegarder puis les compare aux métadonnées de la derniere sauvegarde du serveur.&lt;br&gt;
Cela lui permet de ne sauvegarder que les fichiers ajoutés et pour les fichiers modifiés, seuls les blocs modifiés sont transmis.&lt;/p&gt;
&lt;p&gt;Une interface de visualisation est disponible depuis le serveur :&lt;br&gt;
&lt;code&gt;burp -c /etc/burp/burp-server.conf -a s&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Ziirish à lancé un projet d’interface web de monitoring et de configuration pour burp. Ça se passe ici pour ceux qui veulent tester : &lt;a href=&#34;https://git.ziirish.me/ziirish/burp-ui&#34;&gt;https://git.ziirish.me/ziirish/burp-ui&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Au moment de tester les restaurations, c’est amusant de voir que les regex sont utilisées pour selectioner les fichiers ou repertoires à remonter. C’est vraiment pratique.&lt;/p&gt;
&lt;p&gt;Exemple pour restaurer un fichier depuis le backup numéro 1 dans le repertoire /tmp/&lt;br&gt;
&lt;code&gt;burp -a r -b 1 -r fichier$ -d /tmp/&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;C’est &lt;a href=&#34;https://en.wikipedia.org/wiki/KISS_principle&#34;&gt;KISS&lt;/a&gt; non ? 🙂&lt;/p&gt;
&lt;p&gt;En bonus voici les infos qu’on trouve pour résumer l’état d’un backup.&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;--------------------------------------------------------------------------------&amp;lt;
Start time: 2015-09-11 19:27:01
End time: 2015-09-11 19:28:08
Time taken: 01:07
                         New   Changed Unchanged   Deleted     Total |  Scanned
                   ------------------------------------------------------------
            Files:        15        59         0         0        74 |    48610
        Meta data:         0         0         0         0         0 |        1
      Directories:         0         0         0         0         0 |     6002
       Soft links:         0         0         0         0         0 |       56
    Special files:         0         0         0         0         0 |        2
      Grand total:        15        59         0         0        74 |    54671
                   ------------------------------------------------------------

 Warnings: 1

 Bytes estimated: 213898414380 (199.21 GB)  
 Bytes in backup: 110569423 (105.45 MB)  
 Bytes received: 0  
 Bytes sent: 23859722 (22.75 MB)  
--------------------------------------------------------------------------------
&lt;/code&gt;&lt;/pre&gt;</content>
    </item>
    
  </channel>
</rss>
