Warning: Cannot modify header information - headers already sent by (output started at /usr/www/users/byesga/tutos/plugins/plxHCaptcha/plxHCaptcha.php:1) in /usr/www/users/byesga/tutos/core/lib/class.plx.feed.php on line 273 Bye Gafam, les tutos ! - Tag sauvegarde
https://tutos.bye-gafam.org/tag/sauvegarde
frwhile ( ! geek) code_again();Sun, 22 Mar 2020 17:18:00 +0100PluXmlDuplicacy : Sauvegarder sur le Cloud avec chiffrement local
https://tutos.bye-gafam.org/article22/duplicacy-sauvegardes-avec-chiffrement-local
https://tutos.bye-gafam.org/article22/duplicacy-sauvegardes-avec-chiffrement-local<p>Comment sauvegarder sur le Cloud de façon rapide, fiable et chiffrée.</p>
<p><br />
</p><h2># Duplicacy c'est quoi ?</h2>
<p>C'est de la balle! C'est une solution de backup qui permet de faire de la sauvegarde complète ou incrémentale sur le support de votre choix.<br />
Celà peut être un autre disque local, ou un emplacement FTP, ou sur le Cloud S3(Amazon, Wasabi, DigitalOcean, Minio et), Google(GCP, Google Drive) ou chez Microsoft (Azure, Onedrive), ou sur du OpenSwift ou même OVH pour ceux qui ont conservé leur compte chez feu Hubic.</p>
<p>Pour la liste complète des <a href="https://forum.duplicacy.com/t/supported-storage-backends/1107">stockages supportés c'est ici.</a></p>
<p>Mais là où c'est intéressant, c'est qu'on peut chiffrer la sauvegarde en local, et pour encore plus de sécurité on peut effectuer le chiffrement en ajoutant sa propre clé privé RSA.</p>
<p>Le code est opensource.</p>
<p>L'utilisation du client en ligne de commande est gratuite pour les particuliers.<br />
Ceux qui le souhaitent peuvent bénéficier d'une interface Web mais elle est payante, ceci dit le prix n'est pas excessif à mon sens et la qualité du logiciel en vaut largement le prix.</p>
<h2> </h2>
<h2># Installation</h2>
<p>Pour installer Duplicacy (sur Raspberry), il existe un playbook Ansible prêt à l'emploi :</p>
<pre>
git clone <a href="https://github.com/share-me/init_raspberry">https://github.com/share-me/init_raspberry</a>
cd init_raspberry</pre>
<p>Vérifiez que les variables par défaut soient bonnes dans le répertoire <strong>group_vars/all/</strong><br />
puis lancer le playbook uniquement sur la partie Duplicacy, comme indiqué dans le fichier README</p>
<pre>
ansible_playbook 4.duplicacy.yml</pre>
<p> </p>
<h2># Créer l'emplacement de la sauvegarde</h2>
<p>Je ne vais pas expliquer ce point en détail car il existe beaucoup de stockage différents.</p>
<p>Faites en sorte d'avoir créé le repertoire sur votre disque local/FTP ou le bucket/container s'il s'agit du cloud, et de pouvoir y accéder avec tout ce qu'il faut (password, token, etc)</p>
<p><br />
Pour savoir ce qui est nécessaire, je vous renvoie encore à la <a href="https://forum.duplicacy.com/t/supported-storage-backends/1107">liste des stockages supportés par Duplicacy</a>.</p>
<p> </p>
<p> </p>
<h2># Créer un script de sauvegarde</h2>
<p> </p>
<p>L'exemple suivant concerne un cas pratique, effectuer la sauvegarde de mes contacts et agendas que j'auto héberge grâce à la <a href="http://tutos.bye-gafam.org/article3/radicale-synchronisation-contacts-et-calendrier-installation">solution Radicale comme expliqué ici</a> pour ceux que ca intéresse.<br />
Et mon emplacement de sauvegarde est HUBIC.</p>
<p> </p>
<p>Notez que Duplicacy a une particularité, il utilise des noms de variables précis.<br />
Vous aurez juste à modifier les noms de variable du bloc #auth, pour celà <a href="https://forum.duplicacy.com/t/passwords-credentials-and-environment-variables/">je vous renvoie à la documentation</a> encore pour savoir comment vous devez nommer vos variables, c'est la 3eme colonne.</p>
<p> </p>
<p> </p>
<pre>
#!/bin/bash
# ceci est mon script sauvegarder_radicale.ksh
# remote storage
export storage_url=hubic://Jarvis/Radicale/
export storage_name=radicale
# local repository
export snapshot_id=radicale_snapshots
export repository=/home/radicale/.config/radicale/collections
# auth
export DUPLICACY_${storage_name^^}_HUBIC_TOKEN=/root/hubic-token.json
export DUPLICACY_${storage_name^^}_PASSWORD='mon_super_mot_de_passe_de_chiffrage'
# backup
LOG=/var/log/$(basename $0).log
date | tee -a $LOG
cd ${repository}
duplicacy backup -stats -storage ${storage_name} | tee -a $LOG</pre>
<h2>Initialiser le repertoire à sauvegarder</h2>
<p><br />
Pour celà on copie colle tous les exports de variables qu'on a dans notre script</p>
<p>Et on lance l'initialisation ainsi</p>
<pre>
cd ${repository}
duplicacy init -encrypt -repository ${repository} -storage-name ${storage_name} ${snapshot_id} ${storage_url}</pre>
<p> </p>
<p>Voilà tout est prêt, on rend le script executable.<br />
Reste plus qu'à l'executer régulièrement ou à l'ajouter dans la crontab par exemple.</p>Sun, 22 Mar 2020 17:18:00 +0100Nerd