Langer Posté(e) le 4 juin 2021 Partager Posté(e) le 4 juin 2021 Objectif : Récupération automatique des fichier sur un serveur distant avec rsync, du style Seedbox ou autres Prérequis : Synology avec droits administrateurs / rsync activé / ssh activé Serveur distant sous distribution linux avec droits administrateurs 1. Connexion au Synology On commence par se loguer au Synology avec son compte ADMIN pour générer des clés SSH de connexions : on se connecte en root sudo -i génération des clés SSH, faire 3x entrer pour mettre les clés dans /root/.ssh ssh-keygen -t rsa on vérifie si les clés sont bien générées cd .ssh ls -l Vous devriez voir les clés comme ceci -rw------- 1 root root 1675 May 31 20:09 id_rsa -rw-r--r-- 1 root root 397 May 31 20:09 id_rsa.pub Il faudra importer la clé vers votre serveur distant. Mais tout d'abord, on va se loguer à notre serveur distant avec un autre Putty et paramétrer un USER pour récupérer les fichiers. 2. Connexion au Serveur distant Après s'être loggué, on créer le dossier .ssh mkdir .ssh Puis on donne accès en lecture au USER pour accéder au dossier de la Seedbox par exemple. Dans mon cas, j'ai ajouté mon USER au groupe www-data qui a le droit de lecture sur mon dossier de la Seedbox adduser USER www-data Le côté serveur distant est configuré, on retourne sur la console de gestion du Synology 3. Copie des clés SSH Dans la console du Synology, on va importer la clé SSH par le protocole SCP scp -p /root/.ssh/id_rsa.pub USER@IP.IP.IP.IP:/home/USER/.ssh/ On rentre le mot de passe du USER, et normalement le transfert est effectué. Pour tester si la connexion par clé fonctionne bien à présent, on rentre ssh -p 22 -i /root/.ssh/id_rsa USER@IP.IP.IP.IP Vous devriez être présentement dans la console de gestion du serveur distant, sans avoir eu à rentrer de mot de passe. Le plus dur est fait 🙂 Les manipulations en console sont maintenant terminées. 3. Création de la tâche de rapatriement automatique On va dans la page de gestion du Synology, en se loguant avec son compte admin, et on se dirige vers la planification de tâches On va créer une tâche de travail : CRÉER / Tâche planifiée / Script défini par l'utilisateur Dans l'onglet Général, il faut impérativement mettre l'utilisateur root Dans l'onglet Programmer, on met la fréquence que l'on veut activer la récupération, personnellement j'ai mis toutes les 5 minutes Dans Paramètres de tâche, on va rentrer le script RSYNC Pour ne pas télécharger toutes les 5 minutes le même fichier, il y a des paramètres à ajouter à la commande RSYNC. Aussi, j'ai ajouté un paramètre pour ne pas retransférer un fichier qui a été déplacer du fichier de destination, dans le cas d'un reclassement dans mon Synology bash /root/scripts/rsync.sh rsync -av --inplace --exclude-from transfered_files.txt --log-format='%n' >> transfered_files.txt --rsh='ssh -p22' USER@IP.IP.IP.IP:/chemin de la seedbox// /volume1/chemin de destination/ il y a d'autres paramètres disponibles pour RSYNC, notamment supprimé les fichiers transférés, mais cela ne correspond pas à mes besoins. OPTIONNEL : les fichiers transférées seront la propriété de root, donc on va changer le propriétaire des fichiers dans ce même script, par un USER2, présent sur le Synology chown -R USER2:users /volume1/dossier de destination/ Voici le rendu de la tâche complétée, reste plus qu'à lancer, et ne plus y penser 😄 CHEERS 😉 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
royhamilton Posté(e) le 24 décembre 2022 Partager Posté(e) le 24 décembre 2022 Merci de partager cette information utile. Cela m'aidera certainement à résoudre le problème que j'ai. parkour block 3d 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Rejoindre la conversation
Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.