Logo Khaganat

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
fr:burp [2020/12/16 11:15] – [Erreurs diverses] zatalyzfr:burp [2023/11/10 09:09] (Version actuelle) – [Côté client (Blanu)] zatalyz
Ligne 10: Ligne 10:
 Les principes généraux de la sauvegarde d'un serveur sont dans l'article [[fr:sauver_serveur]].</WRAP> Les principes généraux de la sauvegarde d'un serveur sont dans l'article [[fr:sauver_serveur]].</WRAP>
  
 +<WRAP center round info 60%>
 +Trop de blabla ? La version courte de cet article est sur [[fr:burp-rapide]].
 +</WRAP>
 ===== Burp, le logiciel de base ===== ===== Burp, le logiciel de base =====
  
Ligne 36: Ligne 39:
 En lojban, Blanu veut dire "bleu" et Xunre "rouge" ;-) En lojban, Blanu veut dire "bleu" et Xunre "rouge" ;-)
 </WRAP> </WRAP>
 +<WRAP center round tip 90%>
 +Astuce n°2 : Un backup, c'est trop peu !
 +
 +Si, dans ce tutoriel, on va surtout détailler comment Blanu est sauvegardé sur Xunre, nous allons aussi envisager qu'un autre serveur de backup existe, Crino ("vert" en lojban). Crino fera aussi une sauvegarde de Blanu, en utilisant les mêmes mécanismes que Xunre. Mais comme il y a envoi de deux copies à deux serveurs, cela demande d'adapter l'architecture pour s'y retrouver ! 
 +
 +Ainsi, la configuration dans Blanu pour l'envoie vers Xunre sera dans ''/etc/burp/xunre'', et celle pour Crino dans ''/etc/burp/crino''.
 +</WRAP>
 +
  
 ==== Paramétrer les fichiers de client ==== ==== Paramétrer les fichiers de client ====
Ligne 41: Ligne 52:
  
 Burp permet beaucoup de choses et ce fichier, abondamment commenté, donne un aperçu des possibilités. Burp permet beaucoup de choses et ce fichier, abondamment commenté, donne un aperçu des possibilités.
 +
 +Sur Blanu, nous allons copier ce fichier dans le dossier ''/etc/burp/xunre/burp.conf''
  
 Nous allons faire simple et modifier uniquement les lignes suivantes : Nous allons faire simple et modifier uniquement les lignes suivantes :
Ligne 46: Ligne 59:
   * ''password = abcd'' => mot de passe qui va servir à ce que Xunre et Blanu échangent. Générez un bon mot de passe !   * ''password = abcd'' => mot de passe qui va servir à ce que Xunre et Blanu échangent. Générez un bon mot de passe !
   * ''cname = machin'' => ça identifiera les sauvegardes comme venant du client machin. Donc mettez ''xunre'' sur le serveur Xunre, et ''blanu'' sur le serveur Blanu !   * ''cname = machin'' => ça identifiera les sauvegardes comme venant du client machin. Donc mettez ''xunre'' sur le serveur Xunre, et ''blanu'' sur le serveur Blanu !
-  * ''ssl_peer_cn = burpserver'' => cela doit être le même nom que ce qui est configuré dans le fichier ''/etc/burp/burp-server.conf'' sur le serveur de sauvegarde (donc Xunre). Vous pouvez laisser la configuration par défaut.+  * ''ssl_peer_cn = burpserver'' => cela doit être le même nom que ce qui est configuré dans le fichier ''/etc/burp/burp-server.conf'' sur le serveur de sauvegarde (donc Xunre). Vous pouvez laisser la configuration par défaut sur Xunre, ou bien l'appeler ''xunreserver''.
   * ''include = /home'' => Indiquez les dossiers à inclure dans la sauvegarde. On peut exclure certains dossiers aussi, ou certaines extensions, expressions régulières. Par défaut, c'est le /home qui est sauvegardé, adaptez le chemin.   * ''include = /home'' => Indiquez les dossiers à inclure dans la sauvegarde. On peut exclure certains dossiers aussi, ou certaines extensions, expressions régulières. Par défaut, c'est le /home qui est sauvegardé, adaptez le chemin.
  
-Sur la machine client (Blanu), pour le momentc'est tout !+Sur la machine client (Blanu), nous allons mettre le certificat dans notre dossier ''/etc/burp/xunre/'' (ils seront automatiquement généré au premier contact avec xunre). Doncmodifiez les lignes suivantes :  
 +<code> 
 +ca_burp_ca = /usr/sbin/burp_ca 
 +ca_csr_dir = /etc/burp/xunre/CA-client 
 +ssl_cert_ca = /etc/burp/xunre/ssl_cert_ca.pem 
 +ssl_cert = /etc/burp/xunre/ssl_cert-client.pem 
 +ssl_key = /etc/burp/xunre/ssl_cert-client.key 
 +# Attention celui-ci doit être le même nom côté serveur et client ! 
 +ssl_peer_cn = xunreserver 
 +</code> 
 + 
 +C'est tout pour le moment sur Blanu, il faut configurer un peu Xunre pour aller plus loin.
  
 === Ports, hyperviseurs, etc === === Ports, hyperviseurs, etc ===
Ligne 70: Ligne 94:
 Si ce n'est pas fait, lors d'une sauvegarde, on aura l'erreur suivante : Si ce n'est pas fait, lors d'une sauvegarde, on aura l'erreur suivante :
  
-  2019-06-09 08:18:19: burp[24782] Could not find ssl_cert /etc/burp/ssl_cert-client.pem: No such file or directory +  2019-06-09 08:18:19: burp[24782] Could not find ssl_cert /etc/burp/xunre/ssl_cert-client.pem: No such file or directory 
-  2019-06-09 08:18:19: burp[24782] Could not find ssl_key /etc/burp/ssl_cert-client.key: No such file or directory +  2019-06-09 08:18:19: burp[24782] Could not find ssl_key /etc/burp/xunre/ssl_cert-client.key: No such file or directory 
-  2019-06-09 08:18:19: burp[24782] Could not find ssl_cert_ca /etc/burp/ssl_cert_ca.pem: No such file or directory+  2019-06-09 08:18:19: burp[24782] Could not find ssl_cert_ca /etc/burp/xunre/ssl_cert_ca.pem: No such file or directory
  
 == Cas d'un client envoyant vers un serveur dans une VM == == Cas d'un client envoyant vers un serveur dans une VM ==
Ligne 103: Ligne 127:
 ca_server_name = burpserver ca_server_name = burpserver
 ca_burp_ca = /usr/sbin/burp_ca</code> ca_burp_ca = /usr/sbin/burp_ca</code>
 +
 +<WRAP center round important 60%>
 +Si le client a comme valeur 
 +  ssl_peer_cn = xunreserver
 +Alors le serveur doit avoir la valeur
 +  ca_server_name = xunreserver
 +</WRAP>
  
  
Ligne 111: Ligne 142:
   restore_client = blanu   restore_client = blanu
  
-Enregistrez, savourez.+Enregistrez.
  
-Il faut encore déclarer ailleurs les détails du ou des clients à sauver. Chaque client est représenté par un fichier dans ''/etc/burp/clientconfdir/'', sur le serveur (Xunre). On crée donc un fichier ''/etc/burp/clientconfdir/Machin'', dans lequel on renseigne la même chose que pour cname et password dans la config des clients. <wrap important>Attention, il faut paramétrer le client local même si on n'a pas prévu de s'en servir</wrap> ; ici, ce sera le fichier ''/etc/burp/clientconfdir/xunre'', en plus de ''/etc/burp/clientconfdir/blanu''.+Il faut encore déclarer ailleurs les détails du ou des clients à sauver. Chaque client est représenté par un fichier dans ''/etc/burp/clientconfdir/'', sur le serveur (Xunre). On crée donc un fichier ''/etc/burp/clientconfdir/Machin'', dans lequel on renseigne la même chose que pour cname et password dans la config des clients. <wrap important>Attention, il faut paramétrer le client local sur Xunre; même si on n'a pas prévu de s'en servir</wrap> ; ici, ce sera le fichier ''/etc/burp/clientconfdir/xunre'', en plus de ''/etc/burp/clientconfdir/blanu''. 
 +  sudo nano /etc/burp/clientconfdir/blanu
  
-Le contenu minimal du fichier ressemble à ça :+Le contenu minimal du fichier ressemble à ça (en mettant le bon mot de passe) :
 <code>cname = blanu <code>cname = blanu
 password = abcd</code> password = abcd</code>
Ligne 124: Ligne 156:
  
 Sur chacun des serveurs, lancer la commande suivante, qui va vérifier que tout se passe bien, sans rien écrire (cela liste les sauvegardes, aussi, quand il y en a) : Sur chacun des serveurs, lancer la commande suivante, qui va vérifier que tout se passe bien, sans rien écrire (cela liste les sauvegardes, aussi, quand il y en a) :
-  sudo burp -a l+  sudo burp -c /etc/burp/xunre/burp.conf -a l
  
 S'il n'y a pas d'erreur SSL ou autre, c'est le moment de faire un backup à la main (à lancer dans screen/tmux parce que ça peut être long !) : S'il n'y a pas d'erreur SSL ou autre, c'est le moment de faire un backup à la main (à lancer dans screen/tmux parce que ça peut être long !) :
-  sudo burp -a b+  sudo burp -c /etc/burp/xunre/burp.conf -a b 
 + 
 +Explication : 
 +  * ''-c /etc/burp/xunre/burp.conf'' : indique le fichier de configuration à prendre en compte, ici celui qui enverra vers xunre. 
 +  * ''-a l'' : littéralement "action list". Va vérifier l'état du bazar sans rien écrire. Permet donc de voir si ça va bien se passer. 
 +  * ''-a b'' : littéralement "action backup". Lance un backup classique.
  
 Pour vérifier les sauvegarde d'un client externe, par exemple, sur Xunre, vérifier qu'on a bien les sauvegardes de Blanu : Pour vérifier les sauvegarde d'un client externe, par exemple, sur Xunre, vérifier qu'on a bien les sauvegardes de Blanu :
Ligne 133: Ligne 170:
  
 ==== Réaliser les sauvegardes régulières ==== ==== Réaliser les sauvegardes régulières ====
-<WRAP center round todo 60%> +Cela fonctionne juste avec cron.
-Partie à améliorer : juste un cron ? un démon en plus ? seul ? quoi, où ?  +
-</WRAP>+
  
 === Côté client (Blanu) === === Côté client (Blanu) ===
Ligne 144: Ligne 179:
  
 Pour le client : Pour le client :
-<code>20 4 * * * root /usr/sbin/burp -a t -q 1200 >>/var/log/burp-client 2>&1</code>+<code>20 4 * * * /usr/sbin/burp -c /etc/burp/xunre/burp.conf -a t -q 1200 >>/var/log/burp-client 2>&1</code>
   * ''20 4 * * *'' le client se lance toutes les 20 minutes. Cela permet de sauvegarder régulièrement dans la journée (moins de delta à envoyer d'un coup).   * ''20 4 * * *'' le client se lance toutes les 20 minutes. Cela permet de sauvegarder régulièrement dans la journée (moins de delta à envoyer d'un coup).
   * ''-a'' pour "action", ''t'' pour "timed backup"   * ''-a'' pour "action", ''t'' pour "timed backup"
Ligne 151: Ligne 186:
  
 Si vous envoyez les sauvegardes à un second serveur, vous pouvez ajouter la ligne suivante : Si vous envoyez les sauvegardes à un second serveur, vous pouvez ajouter la ligne suivante :
-<code>20 4 * * *      root    /usr/sbin/burp -c /etc/burp/burp_2sauvgarde.conf -a t -q 1200 >>/var/log/burp_2sauvgarde 2>&1</code> +<code>20 4 * * * /usr/sbin/burp -c /etc/burp/crino/borg.conf -a t -q 1200 >>/var/log/burp_2sauvgarde 2>&1</code> 
-  * ''-c /etc/burp/burp_2sauvgarde.conf'' indique un autre fichier de configuration à prendre en compte (cf [[fr:burp#sauvegarder_sur_un_2eme_servers|plus bas]]pour les détails) +  * ''-c /etc/burp/crino/borg.conf'' indique un autre fichier de configuration à prendre en compte (cf [[fr:burp#sauvegarder_sur_un_2eme_servers|plus bas]]pour les détails)
  
 Voici à quoi devrait ressembler votre cron pour la partie concernant Burp : Voici à quoi devrait ressembler votre cron pour la partie concernant Burp :
 <code> <code>
 # CLIENT Burp # CLIENT Burp
-20 4 * * * root /usr/sbin/burp -a t -q 1200 >>/var/log/burp-client 2>&1+20 4 * * * /usr/sbin/burp -c /etc/burp/xunre/burp.conf -a t -q 1200 >>/var/log/burp-client 2>&1
  
 # Si vous avez du mysql ou autre BDD, pensez au script  # Si vous avez du mysql ou autre BDD, pensez au script 
 00 1 * * * /home/user/script/mysqlbackup.sh 00 1 * * * /home/user/script/mysqlbackup.sh
 </code> </code>
 +<WRAP center round info 60%>
 +Retrouvez le superbe script de sauvegarde des bases de donnés [[fr:sauver_serveur#sauvegarde_des_bases_mysql_via_un_script|sur cette page]]. 
 +</WRAP>
 +
 +
  
 === Côté serveur (Xunre) === === Côté serveur (Xunre) ===
  
-Votre crontab reprend les mêmes éléments côté client mais ajoute des éléments côté serveur+Votre crontab reprend les mêmes éléments côté client mais ajoute des éléments côté serveur pour s'assurer que tout va bien (pensez à changer l'email et à vous assurer que votre serveur sait envoyer des mails) :
 <code># SERVER Burp <code># SERVER Burp
 # Envoie un résumé à 6h (donc, tous les jours). # Envoie un résumé à 6h (donc, tous les jours).
-0 6 * * * root    /etc/burp/send_summary /etc/burp/burp-server.conf youremail@example.com "Daily backup summary"+0 6 * * * /usr/sbin/burp -a S | mail -s "Résumé des backup" admin@mon email.com
  
 # The following will run file deduplication over all client storages every # The following will run file deduplication over all client storages every
 # Saturday at 8 in the morning. Again, if your server is using a different # Saturday at 8 in the morning. Again, if your server is using a different
 # config file to /etc/burp/burp-server.conf, change that argument. # config file to /etc/burp/burp-server.conf, change that argument.
-#0 8 * * 6 root    /usr/sbin/bedup -l -c /etc/burp/burp-server.conf >>/var/log/burp-bedup 2>&1+#0 8 * * 6 /usr/sbin/bedup -l -c /etc/burp/burp-server.conf >>/var/log/burp-bedup 2>&1 
 +</code>
  
 +<WRAP center round todo 60%>
 +Cette partie serait à améliorer : envoyer un mail s'il y a un souci, plutôt ? 
  
-30 1 * * * /home/khaganat/mybackup/balai.sh +La déduplication, j'ai pas tout compris, et ça semble plutôt se paramétrer dans le fichier de conf, mais je laisse le code (commenté) pour qui pourra comprendre. 
 +</WRAP>
  
-</code> 
 ==== Restaurer une sauvegarde ==== ==== Restaurer une sauvegarde ====
 Si on veut contrôler, on peut décompresser une archive dans un dossier temporaire sur le serveur (option ''-d /chemin/''). Si on veut contrôler, on peut décompresser une archive dans un dossier temporaire sur le serveur (option ''-d /chemin/'').
Ligne 200: Ligne 243:
   burp -ar -C nom_du_client   burp -ar -C nom_du_client
      
-==== Sauvegarder sur un 2eme servers ==== +==== Sauvegarder sur un deuxième serveur ==== 
-Faire une copie du fichier de configuration client pour le deuxième server+Faire une copie du fichier de configuration client pour le deuxième serveur, Crino 
-  cp /etc/burp/burp.conf /etc/burp/burp-2sauvgarde.conf +  cp /etc/burp/burp.conf /etc/burp/crino/burp.conf 
-  nano /etc/burp/burp-2sauvgarde.conf+  nano /etc/burp/crino/burp.conf
  
-Changer IP, nom, mdp +Changer l'adresse du serveurle mdp, peut-être le nom du client pour ne pas s'emmêler les pinceaux ? Ainsi que l'emplacement du certificat. 
-  server = IP 2eme server +<code> 
-  password = ******* +server = crino 
-  cname = client_blabla+password = ******* 
 +cname = blanucrino
  
-Changer l'emplacement du certificat du 2eme server +ca_burp_ca = /usr/sbin/burp_ca 
-  # Uncomment the following lines to automatically generate a certificate signing +ca_csr_dir = /etc/burp/crino/CA-client 
-  # request and send it to the server. +ssl_cert_ca = /etc/burp/crino/ssl_cert-client_ca.pem 
-  ca_burp_ca = /usr/sbin/burp_ca +ssl_cert = /etc/burp/crino/ssl_cert-client.pem 
-  ca_csr_dir = /etc/burp/server2/CA-client_blabla+ssl_key = /etc/burp/crino/ssl_cert-client.key
  
-  # SSL certificate authority - same file on both server and client +ssl_peer_cn crino 
-  ssl_cert_ca /etc/burp/ssl_cert-client_ca_blabla.pem +</code>
- +
-  # Client SSL certificate +
-  ssl_cert = /etc/burp/ssl_cert-client_blabla.pem +
- +
-  # Client SSL key +
-  ssl_key = /etc/burp/ssl_cert-client_blabla.key +
- +
-Changer le nom du server +
-  ssl_peer_cn = server2+
  
-Ne pas oublier de changer le nom sur le server+Crino (côté second serveur, donc), doit avoir son nom en rapport pour le certificat 
-  ca_server_name = server2+  ca_server_name = crino
  
-Lancer la commande de vérification: +Lancer la commande de vérification depuis Blanu 
-  burp -c /etc/burp/burp-2sauvgarde.conf -a l+  burp -c /etc/burp/crino/burp.conf -a l
      
 Pour lancer une sauvgarde manuellement: Pour lancer une sauvgarde manuellement:
-  burp -c /etc/burp/burp-2sauvgarde.conf -a b+  burp -c /etc/burp/crino/burp.conf -a b
  
-=====Burp-ui , interface web=====+===== Burp-ui , interface web =====
 L'interface web peut simplifier certaines opérations et c'est plus visuel. Cependant il faudra quand même paramétrer proprement Burp en amont. L'interface web peut simplifier certaines opérations et c'est plus visuel. Cependant il faudra quand même paramétrer proprement Burp en amont.
- + 
 +<WRAP center round todo 60%> 
 +Cette partie n'est pas assez testée, on n'a pas encore fait marcher ce truc. 
 +</WRAP> 
 ====Installation de Burp-ui==== ====Installation de Burp-ui====
 Voir https://burp-ui.readthedocs.io/en/latest/installation.html Voir https://burp-ui.readthedocs.io/en/latest/installation.html
Ligne 318: Ligne 357:
 ===== Erreurs diverses ===== ===== Erreurs diverses =====
 ==== Sur le serveur ==== ==== Sur le serveur ====
 +=== main socket: network read problem ===
  
 L'install de base a foiré, vous avez purgé le paquet, recommencé, et vous avez cette erreur : L'install de base a foiré, vous avez purgé le paquet, recommencé, et vous avez cette erreur :
Ligne 332: Ligne 372:
   sudo ps -A | grep burp   sudo ps -A | grep burp
 Et tuez le processus, puis relancez les commandes. Et tuez le processus, puis relancez les commandes.
 +
 +=== could not connect to x:4971 ===
 +Après un reboot, j'ai eu ceci lors d'une quelconque commande avec burp : 
 +
 +<code>
 +sudo burp -c /etc/burp/burp.conf -a l
 +2023-07-28 06:05:20 +0000: burp[10783] Connecting to (adresse ip):4971
 +2023-07-28 06:05:20 +0000: burp[10783] could not connect to (adresse ip):4971
 +</code>
 +
 +Simplement, le démon de burp sur le serveur ne s'est pas rallumé...
 +
 +Pour le lancer : 
 +<code>sudo burp -c /etc/burp/burp-server.conf</code>
  
 ==== Sur le client ==== ==== Sur le client ====
 +=== Peer exiting ===
 +
 On a changé le serveur où sauver les choses, et là, burp nous dit ça côté client : On a changé le serveur où sauver les choses, et là, burp nous dit ça côté client :
 <code>burp -a l <code>burp -a l
Ligne 346: Ligne 402:
  
 Ici aussi, tuez le processus ET supprimez le certificat actuel : Ici aussi, tuez le processus ET supprimez le certificat actuel :
-  sudo /etc/burp/rm ssl_cert-*+  sudo rm /etc/burp/ssl_cert*
  
 En relançant la commande, cela le régènerera. En relançant la commande, cela le régènerera.
 +
 +=== unexpected command in authorise_client ===
 +
 +<code>burp -c /etc/burp/nuxru/burp_nuxru.conf -a l
 +2020-12-16 10:53:00 +0000: burp[1190987] Could not find ssl_cert /etc/burp/nuxru/ssl_cert-client.pem: No such file or directory
 +2020-12-16 10:53:00 +0000: burp[1190987] Could not find ssl_key /etc/burp/nuxru/ssl_cert-client.key: No such file or directory
 +2020-12-16 10:53:00 +0000: burp[1190987] Could not find ssl_cert_ca /etc/burp/nuxru/ssl_cert_ca.pem: No such file or directory
 +2020-12-16 10:53:00 +0000: burp[1190987] Connecting to nuxru.khaganat.net:4971
 +2020-12-16 10:53:00 +0000: burp[1190987] unexpected command in authorise_client(): e:001D:unable to authorise on server</code>
 +Avant de trop s'exciter... Simplement vérifier que côté serveur, le client a été renseigné dans ''/etc/burp/clientconfdir/monclient'' et que la ligne ''restore_client = monclient'' est ajoutée dans ''/etc/burp/burp-server.conf''.
 +
 ===== Sources, Liens utiles ===== ===== Sources, Liens utiles =====
 Voir aussi : Voir aussi :
CC Attribution-Share Alike 4.0 International Driven by DokuWiki
fr/burp.1608113732.txt.gz · Dernière modification : 2021/12/03 19:18 (modification externe)

Licences Mentions légales Accueil du site Contact