Mise en place d'une sauvegarde a distance

Bonjour,
J'ai decide d'installer un disque dur externe au boulot, que je vais utiliser comme sauvegarde personnelle de mes donnees. J'ai pense que ma demarche peut etre utile. Comme ca n'est pas exactement simple, je vais detailler ce qu'il faut faire.
Generalites
Le but est d'utiliser rdiff-backup, c'est un utilitaire Unix qui permet de faire une copie intelligente (autrement dit il remplace ce qui a ete modifie) et de facon securisee (via une connection ssh).
C'est Unix, ca signifie donc que c'est utilisable sous Mac OS X, sous Linux... et sous Windows via Cygwin! Je vais surtout detailler cette installation-la, car sous les systemes a base Unix, c'est tres simple. Dans la suite j'indiquerai "Unix" quand je parlerai de Linux et MacOS X.
Il y a toutefois certains points qui seront utiles aux utilisateurs "moins avances" de MacOS X (notamment ceux qui n'ont aucune experience "reseau").
Pour ce qui est de Windows, j'ai Windows 7 ou Windows Server 2008. Pour XP, Vista il vous faudra regarder de votre cote.
Cote serveur
* Machine Unix
Installer et lancer OpenSSH, et lancer le service sshd
Installer rdiff et rdiff-backup
* Machine Windows
Il faut avoir un utilisateur avec mot de passe, si ca n'est pas le cas, en creer un.
Installer Cygwin, depuis le site cygwin.com. Il s'agit d'un "Unix dans Windows". Pour ce qui est des paquets a installer, il faut: cygrunsrv, openssh, rdiff, rdiff-backup
Installation du serveur ssh
- ouvrir une fenetre Cygwin en mode administrateur (pas de double-click, passer par click droit!), et taper: ssh-host-config -y
- s'il vous demande un mot de passe, en entrer un.
- lancer le serveur sshd: cygrunsrv -S sshd
Ouverture du port ssh du pare-feu
- dans tableau de commande, puis securite, ouvrir le pare-feu
- dans reglages avances, aller dans "regles entrantes"
- ajouter une regle, en ouvrant le port 22, a tous les reseaux
Cote client
* Machines Unix
- installer openssh, rdiff et rdiff-backup
* Machine Windows
- installer Cygwin, avec les paquets openssh, rdiff, rdiff-backup
* Toutes machines (optionnel)
- pour faciliter la vie, il est bon de creer un acces sans mot de passe. Ca n'est pas une etape necessaire.
- depuis un terminal (ou une fenetre Cygwin), creer une clef ssh: ssh-keygen
- l'installer dans .ssh/id_rsa (defaut). Ne pas entrer de mot de passe!
- propager la clef publique vers le serveur: ssh-copy-id -i ~/.ssh/id_rsa.pub <utilisateur>@<adresse IP du serveur>
- il vous sera demande le mot de passe utilisateur, l'entrer
- pour tester, utiliser: ssh <utilisateur>@<adresse IP du serveur> uname -a
- si tout va bien vous devriez alors voir une ligne decrivant le Systeme d'Exploitation du serveur.
Utilisation
- ouvrir un terminal/fenetre Cygwin
- lancer la commande de sauvegarde: rdiff-backup <chemin local> <utilisateur>@<adresse IP du serveur>::<chemin sur le serveur>
Si vous avec utilise l'astuce clef publique/clef privee vous n'aurez pas a entrer de mot de passe. Sinon il vous faudra taper le mot de passe d'utilisateur sur le serveur.
(Pour les habitues de ssh, faire attention au double :: )
A noter que sous Cygwin, vous devez utiliser une syntaxe "Unix". Cela signifie que si votre repertoire local est C:\Backup, vous devez taper /cygdrive/c/Backup, de meme que sur la machine distante.
Il va de soi que le temps de transmission des donnees depend des connections du serveur et du client.
J'ai decide d'installer un disque dur externe au boulot, que je vais utiliser comme sauvegarde personnelle de mes donnees. J'ai pense que ma demarche peut etre utile. Comme ca n'est pas exactement simple, je vais detailler ce qu'il faut faire.
Generalites
Le but est d'utiliser rdiff-backup, c'est un utilitaire Unix qui permet de faire une copie intelligente (autrement dit il remplace ce qui a ete modifie) et de facon securisee (via une connection ssh).
C'est Unix, ca signifie donc que c'est utilisable sous Mac OS X, sous Linux... et sous Windows via Cygwin! Je vais surtout detailler cette installation-la, car sous les systemes a base Unix, c'est tres simple. Dans la suite j'indiquerai "Unix" quand je parlerai de Linux et MacOS X.
Il y a toutefois certains points qui seront utiles aux utilisateurs "moins avances" de MacOS X (notamment ceux qui n'ont aucune experience "reseau").
Pour ce qui est de Windows, j'ai Windows 7 ou Windows Server 2008. Pour XP, Vista il vous faudra regarder de votre cote.
Cote serveur
* Machine Unix
Installer et lancer OpenSSH, et lancer le service sshd
Installer rdiff et rdiff-backup
* Machine Windows
Il faut avoir un utilisateur avec mot de passe, si ca n'est pas le cas, en creer un.
Installer Cygwin, depuis le site cygwin.com. Il s'agit d'un "Unix dans Windows". Pour ce qui est des paquets a installer, il faut: cygrunsrv, openssh, rdiff, rdiff-backup
Installation du serveur ssh
- ouvrir une fenetre Cygwin en mode administrateur (pas de double-click, passer par click droit!), et taper: ssh-host-config -y
- s'il vous demande un mot de passe, en entrer un.
- lancer le serveur sshd: cygrunsrv -S sshd
Ouverture du port ssh du pare-feu
- dans tableau de commande, puis securite, ouvrir le pare-feu
- dans reglages avances, aller dans "regles entrantes"
- ajouter une regle, en ouvrant le port 22, a tous les reseaux
Cote client
* Machines Unix
- installer openssh, rdiff et rdiff-backup
* Machine Windows
- installer Cygwin, avec les paquets openssh, rdiff, rdiff-backup
* Toutes machines (optionnel)
- pour faciliter la vie, il est bon de creer un acces sans mot de passe. Ca n'est pas une etape necessaire.
- depuis un terminal (ou une fenetre Cygwin), creer une clef ssh: ssh-keygen
- l'installer dans .ssh/id_rsa (defaut). Ne pas entrer de mot de passe!
- propager la clef publique vers le serveur: ssh-copy-id -i ~/.ssh/id_rsa.pub <utilisateur>@<adresse IP du serveur>
- il vous sera demande le mot de passe utilisateur, l'entrer
- pour tester, utiliser: ssh <utilisateur>@<adresse IP du serveur> uname -a
- si tout va bien vous devriez alors voir une ligne decrivant le Systeme d'Exploitation du serveur.
Utilisation
- ouvrir un terminal/fenetre Cygwin
- lancer la commande de sauvegarde: rdiff-backup <chemin local> <utilisateur>@<adresse IP du serveur>::<chemin sur le serveur>
Si vous avec utilise l'astuce clef publique/clef privee vous n'aurez pas a entrer de mot de passe. Sinon il vous faudra taper le mot de passe d'utilisateur sur le serveur.
(Pour les habitues de ssh, faire attention au double :: )
A noter que sous Cygwin, vous devez utiliser une syntaxe "Unix". Cela signifie que si votre repertoire local est C:\Backup, vous devez taper /cygdrive/c/Backup, de meme que sur la machine distante.
Il va de soi que le temps de transmission des donnees depend des connections du serveur et du client.