Outils pour utilisateurs

Outils du site


informatique:yunohost:sauvegarder_yunohost

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
informatique:yunohost:sauvegarder_yunohost [2020/08/13 09:20] – [Lancer manuellement le backup] simoninformatique:yunohost:sauvegarder_yunohost [2022/09/12 09:32] (Version actuelle) – [Problèmes rencontrés] simon
Ligne 12: Ligne 12:
  
 ==== Installation de Borg Backup App ==== ==== Installation de Borg Backup App ====
-J'installe sur mon serveur [[informatique:vps:quercus]] l'application cliente, [[https://yunohost.org/#/app_borg|Borg Backup App]].+J'installe l'application cliente, [[https://yunohost.org/#/app_borg|Borg Backup App]], sur [[informatique:vps:quercus]].
  
 J'ai besoin :  J'ai besoin : 
Ligne 39: Ligne 39:
 Cette clé est également envoyée par mail à l'administrateur du serveur. Cette clé est également envoyée par mail à l'administrateur du serveur.
 ==== Installation de Borg Server ==== ==== Installation de Borg Server ====
-Une fois la partie cliente installée, passons à l'installation de la partie serveur, l'application [[https://yunohost.org/#/app_borgserver|Borg Server]].+Une fois la partie cliente installée, passons à l'installation de la partie serveur, l'application [[https://yunohost.org/#/app_borgserver|Borg Server]], sur [[informatique:vps:fagus]].
  
 Il faudra configurer :  Il faudra configurer : 
Ligne 52: Ligne 52:
  
 <code bash> <code bash>
-root@artanux:/home# cat /home/quercus/.ssh/authorized_keys +root@fagus:/home# cat /home/quercus/.ssh/authorized_keys 
 command="borg serve --storage-quota 500G --restrict-to-repository /home/quercus/backup",no-pty,no-agent-forwarding,no-port-forwarding,no-X11-forwarding,no-user-rc ssh-ed25519 AAAA(...) command="borg serve --storage-quota 500G --restrict-to-repository /home/quercus/backup",no-pty,no-agent-forwarding,no-port-forwarding,no-X11-forwarding,no-user-rc ssh-ed25519 AAAA(...)
 </code> </code>
Ligne 62: Ligne 62:
 </code> </code>
  
 +Pour vérifier que tout fonctionne bien : 
 +
 +  * Vérifier sur un dossier "/home/quercus/backup/" a bien été créé sur Fagus.
 +  * Utiliser les commandes borgs pour vérfier : 
 +
 +<code bash>
 +root@fagus:~# borg list /home/quercus/backup/
 +Enter passphrase for key /home/quercus/backup: 
 +auto_conf_16_08_20_15:36             Sun, 2020-08-16 15:36:46 [dca3fdacfe470ef02a1a8b878944ab9fedb0468f4823891d8c0e2419701b2d32]
 +auto_data_16_08_20_15:36             Sun, 2020-08-16 15:37:04 [8992608fb919d66a54f1c0412a8a88b471cda229a66f154dc4fc945076f8d8ff]
 +auto_borg_16_08_20_15:38             Sun, 2020-08-16 15:38:29 [38b1f269210021a671be08e86a85a120b3664a321892d11caad555cab6d23e53]
 +auto_borgserver_16_08_20_15:38       Sun, 2020-08-16 15:38:43 [7101a5803175dc31d4f54c33b4ecab95d225532faa0240fd84d492b265c05ac5]
 +auto_dokuwiki_16_08_20_15:38         Sun, 2020-08-16 15:39:04 [dbaf920f37f399b5186194a1d93973771e15e10d47da352514ddcf895664cc07]
 +auto_my_webapp_16_08_20_15:44        Sun, 2020-08-16 15:44:30 [3aa0379bcf79a43d22bed9d770c8192afbd859306ddc864fc903759371ada9bb]
 +auto_redirect_16_08_20_15:44         Sun, 2020-08-16 15:44:49 [992fc9016a91b54b82f46e65aeb95e203099703634211ff16e0e7841854f9161]
 +auto_shaarli_16_08_20_15:45          Sun, 2020-08-16 15:45:10 [8fe1ceed03878c1305c87ea9f7e3630e826a487580538fc190a1e17d9e318ddf]
 +
 +root@fagus:~# borg info /home/quercus/backup/
 +Enter passphrase for key /home/quercus/backup: 
 +Repository ID: 8fdd120542cee6ae4dd6d1694e73175e978977b523ed83188c9da91ccc12b0ec
 +Location: /home/quercus/backup
 +Encrypted: Yes (repokey)
 +Cache: /root/.cache/borg/8fdd120542cee6ae4dd6d1694e73175e978977b523ed83188c9da91ccc12b0ec
 +Security dir: /root/.config/borg/security/8fdd120542cee6ae4dd6d1694e73175e978977b523ed83188c9da91ccc12b0ec
 +------------------------------------------------------------------------------
 +                       Original size      Compressed size    Deduplicated size
 +All archives:                2.71 GB              2.65 GB              2.32 GB
 +
 +                       Unique chunks         Total chunks
 +Chunk index:                   18749                25990
 +</code>
 ==== En cas de problème ==== ==== En cas de problème ====
  
Ligne 69: Ligne 100:
  
 <code bash> <code bash>
-admin@simonlefort:~$ ls -al /var/log/backup*+admin@quercus:~$ ls -al /var/log/backup*
 -rw-r--r-- 1 root root 18317 Aug 13 00:01 /var/log/backup_borg.err -rw-r--r-- 1 root root 18317 Aug 13 00:01 /var/log/backup_borg.err
 -rw-r--r-- 1 root root     0 Aug 12 20:53 /var/log/backup_borg.log -rw-r--r-- 1 root root     0 Aug 12 20:53 /var/log/backup_borg.log
 </code> </code>
  
-Une erreur possible +Depuis la mi-mai 2021 et la version "1.1.16~ynh20", les logs sont dans un sous-dossier :  
 +<code bash> 
 +root@artanux:/home/admin# ls -al /var/log/borg/ 
 +total 228 
 +drwxr-xr-x  2 borg borg  4096 May 24 09:49 . 
 +drwxr-xr-x 25 root root 12288 May 24 00:00 .. 
 +-rw-r--r--  1 root root 13517 May 15 00:06 210515_0000.err 
 +-rw-r--r--  1 root root  7326 May 15 00:06 210515_0000.log 
 +(...) 
 +</code> 
 + 
 +  * Vérifier les erreurs données au lancement du service  
 + 
 +<code bash> 
 +# systemctl status --lines 100 borg  
 +● borg.service - Run backup borg 
 +   Loaded: loaded (/etc/systemd/system/borg.service; enabled; vendor preset: enabled) 
 +   Active: failed (Result: exit-code) since Thu 2020-08-13 00:01:16 UTC; 9h ago 
 + Main PID: 31654 (code=exited, status=1/FAILURE) 
 + 
 +Aug 13 00:00:03 quercus systemd[1]: Starting Run backup borg... 
 +Aug 13 00:00:05 quercus backup-with-borg[31654]: ls: cannot access '/etc/yunohost/hooks.d/backup/': 
 +Aug 13 00:00:07 quercus slapcat[31880]: DIGEST-MD5 common mech free 
 +</code> 
 + 
 +  * Vérifier qu'on a pas fait d'erreur dans les clés SSH (mauvais copier/coller, etc...) 
 + 
 +===== Problèmes rencontrés ===== 
 +=== Problèmes de clés SSH === 
 +Comme je sauvegarde Fagus sur Quercus et inversement, je me suis un peu emmêlé avec les clés SSH... Il faut penser à vérifier que la clé publique du client corresponde à ce qui est dans authorized_keys sur le serveur : 
 + 
 +<code bash> 
 +root@quercus:~# ls -al /root/.ssh/ 
 +total 20 
 +drwx------ 2 root root 4096 Aug 12 20:53 . 
 +drwx------ 5 root root 4096 Aug 14 07:40 .. 
 +-rw------- 1 root root    0 Aug  8 09:15 authorized_keys 
 +-rw------- 1 root root  411 Aug 12 19:37 id_borg_ed25519 
 +-rw-r--r-- 1 root root  101 Aug 12 19:37 id_borg_ed25519.pub 
 +-rw-r--r-- 1 root root  444 Aug 12 20:53 known_hosts 
 +</code> 
 + 
 +<code bash> 
 +root@fagus:~# ls -al /home/quercus/.ssh/authorized_keys  
 +-rw-r--r-- 1 root root 264 Aug 12 21:12 /home/quercus/.ssh/authorized_keys 
 +</code>
  
 +=== Problèmes pour lancer borg sur le serveur ===
 <code bash> <code bash>
 +root@fagus:~# tail -f -n 20 /var/log/backup_borg.err
 Remote:  Remote: 
 Remote:  Remote: 
Ligne 88: Ligne 166:
 </code> </code>
  
-  * Vérifier les erreurs données au lancement du service +Borg ne peut pas être lancé par l'utilisateur ''quercus'' sur le serveur ''fagus''.
  
 <code bash> <code bash>
-systemctl status --lines 100 borg  +root@fagus:~sudo -u quercus borg --help 
-● borg.service Run backup borg +sudounable to execute /usr/local/bin/borg: Permission denied 
-   Loadedloaded (/etc/systemd/system/borg.service; enabled; vendor presetenabled) +</code>
-   Active: failed (Result: exit-code) since Thu 2020-08-13 00:01:16 UTC; 9h ago +
- Main PID: 31654 (code=exited, status=1/FAILURE)+
  
-Aug 13 00:00:03 simonlefort.be systemd[1]: Starting Run backup borg... +La solution consiste à vérifier les droits pour lancer Borg sur le serveur ''fagus''  
-Aug 13 00:00:05 simonlefort.be backup-with-borg[31654]ls: cannot access '/etc/yunohost/hooks.d/backup/': +<code bash> 
-Aug 13 00:00:07 simonlefort.be slapcat[31880]: DIGEST-MD5 common mech free+root@fagus:~# ls -al /usr/local/bin/borg  
 +-rwxr--r-- 1 root staff 69 Aug 10 14:03 /usr/local/bin/borg 
 + 
 +root@fagus:~# chmod 755 /usr/local/bin/borg 
 </code> </code>
  
-  Vérifier qu'on a pas fait d'erreur dans les clés SSH (mauvais copier/coller, etc...)+Une fois les droits réglés, ça marche correctement! 
 + 
 +=== Problème de passphrase incomplète === 
 + 
 +Ma passphrase, générée automatiquement par [[:bitwarden]], contenait "$texte*", qui a été interprété comme une variable vide. Un bout de la passphrase a donc disparu. 
 + 
 +J'ai ajouté mon expérience sur cette [[https://github.com/YunoHost-Apps/borg_ynh/issues/49|issue Github]].  
 + 
 +Le problème se situe dans le fichier suivant : 
 +<code bash> 
 +# cat /etc/yunohost/hooks.d/backup_method/05-borg_app 
 +(...) 
 +BORG_PASSPHRASE="RGjauGbbg6d$jj77g*piabfbfGedE" 
 +(...) 
 +</code> 
 +(La passphrase été changée évidemment!) 
 + 
 +La passphrase utilisée réellement pour chiffrer le backup, dans ce cas-ci : ''RGjauGbbg6d*piabfbfGedE'' 
 + 
 +=== Changement de port SSH === 
 + 
 +Je recevais pas mal d'alertes de fail2ban à propos de tentative pour se connecter à SSH depuis le port standard. J'ai donc changé le port SSH sur mes serveurs (en changeant dans le fichier ''/etc/ssh/sshd_config''). 
 + 
 +Évidemmentça pète la configuration Borg et celui-ci n'arrive plus à se connecter au serveur distant. 
 + 
 +Il y a deux lignes à changer dans le fichier '''' 
 +<code bash> 
 +# cat /etc/yunohost/hooks.d/backup_method/05-borg_app | grep ssh 
 +if ssh-keygen -F "monserveur.com" >/dev/null ; then 
 +    BORG_RSH="ssh -i /root/.ssh/id_${app}_ed25519 -oStrictHostKeyChecking=yes " 
 +    BORG_RSH="ssh -i /root/.ssh/id_${app}_ed25519 -oStrictHostKeyChecking=no " 
 +</code> 
 + 
 +Il faut ajouter l'information pour qu'il utilise le bon port :  
 +<code bash> 
 +# vim /etc/yunohost/hooks.d/backup_method/05-borg_app 
 +    BORG_RSH="ssh -i /root/.ssh/id_${app}_ed25519 -p 1234 -oStrictHostKeyChecking=yes " 
 +    BORG_RSH="ssh -i /root/.ssh/id_${app}_ed25519 -p 1234 -oStrictHostKeyChecking=no " 
 +</code> 
 +(''1234'' est un exemple de port, ce n'est pas celui que j'utilise.) 
 + 
 +Il faut que je remonte ce bug sur le github du projet.
informatique/yunohost/sauvegarder_yunohost.1597310422.txt.gz · Dernière modification : 2020/08/13 09:20 de simon