Recherche


imprimer pdf

/!\ L'offre EBackup n'est plus proposée /!\





Compte Ebackup Acces Sécurisé par ssh

Pourquoi cette page ?

Cette page s'adresse aux personnes possédant un (ou plusieurs) compte(s) E-Backup? ou à ceeux qui voudraient se renseigner sur ce produit (voir CompteEbackup). Cette page explique le moyen d'acceder à ce compte de maniere "securisée" grâce au protocole SSH et à des outils tel que scp et rsync.

Ce type d'accès au CompteEbackup est réservé aux personnes qui savent se servir de SSH et qui peuvent utiliser des clefs ainsi que les logiciels utilisant le protocole ssh : scp et rsync.

Pour les personnes utilisant Windows, préferez l'acces via FTP (CompteEbackupAccesFtp). Aucune partie de ce guide n'indique la marche à suivre pour l'installation sous Windows de tels outils.

Pour les personnes utilisant Mac, il est possible que cela fonctionne mais nous n'avons cependant pas d'instructions à fournir.

Ce guide présente l'utilisation sous Linux uniquement. Facilement adaptable a tous les "*nix like".

Le protocole SSH

Le protocole SSH est basé sur les librairies de cryptage OpenSSL.

ssh est un programme à part entière et son site officiel est http://www.openssh.com/.
ssh est installé par défault sur toute machine Linux.

Ssh permet de créer un tunnel crypté entre 2 ordinateurs et d'identifier la personne sur l'ordinateur distant. Une fois ce tunnel créé, il est possible de faire transiter n'importe quel type de données à l'intérieur. "ssh" fait un remote login par défaut, mais il est possible de l'utiliser à d'autres fins, comme par exemple scp et rsync.

Pour identifier la personne sur l'ordinateur distant, nous avons choisi d'utiliser des clefs. La clef est un moyen sûr d'identifier une personne. Le paragraphe suivant explique tout à propos de ces clefs.

IMPORTANT : l'identification par mot de passe est DÉSACTIVÉE sur nos serveurs ssh.


Les clefs

Pour être identifié grâce à une clef, il faut qu'elle soit utilisée par ssh sur l'ordinateur client et installée sur l'ordinateur distant. Vous pouvez avoir plusieurs clefs ssh sur un même compte E-Backup?.

La manager des clefs

Pour accéder au manager des clefs de vos comptes E-Backup?, voici le mode opératoire :

il vous faut pour cela être en possession de votre NicHandle (et de son mot de passe) et d'un poste permettant la navigation internet. Ouvrez un navigateur internet et allez sur la page suivante :

ttp://www.ebackup.fr/cgi-bin/fr/backup/index.cgi

Vous devez avoir une demande d'identification comme cela :



Renseignez les cases avec VOTRE NicHandle et le password de votre NicHandle.

Si vous n'avez pas fait d'erreur sur votre NicHandle et votre password, vous arriverez sur une page donnant la liste de vos comptes Ebackup



Choisissez celui dont vous voulez gérer les clefs en cliquant simplement sur un élément de sa ligne.

Une page d'exploration de votre compte apparaît :



Noter qu'il y a un bouton "Accès". Ce lien vous permet d'accéder à la page de gestion des clefs. Cliquez dessus.

Vous arrivez sur une nouvelle page qui propose de changer le mot de passe FTP (voir CompteEbackupAccesFtpChangerPassword). et la gestion des clefs ssh en bas de page :

Si vous n'avez aucune clef d'installée, il apparaîtra :



Si vous avez au moins une clef installée :




Créer une clef

Sous Linux, vous avez l'outil "ssh-keygen" pour créer des clefs.

Les clefs doivent être de type RSA, on ajoute donc l'option -t rsa. La longueur est pas importante, mais doit être d'au moins 768 bit : -b 768.

Donc pour créer une clef : ssh-keygen -t rsa -b 768
Le programme vous posera ensuite une serie de questions auquelles les réponses sont TRÈS importantes.

Si vous la créez sous l'utilisateur root :
Enter file in which to save the key (/root/.ssh/id_rsa):
Si vous avez déja une clef, vous devez faire attention à ce que vous allez répondre. Si vous ne savez pas ce qu'il demande, tappez "entrée".

Enter passphrase (empty for no passphrase):
Enter same passphrase again:
IL NE VOUS DEMANDE PAS LE MOT DE PASSE DE VOTRE COMPTE E-BACKUP !
Si vous désirez utiliser cette clef dans des scripts automatiques, laisser une passphrase vide : tapez sur "entrée". Sinon, vous savez ce que vous faites.

L'outil crée ensuite votre clef et la stocke dans des fichiers qu'il vous nomme.

Une clef se compose de deux parties distinctes :

  • la partie privée : le nom de fichier sans ".pub",
  • la partie publique : l'autre fichier, avec ".pub" à la fin.


La partie privée est à ne communiquer à PERSONNE, même pas à OVH. C'est la partie publique qui est utile à l'ordinateur distant pour vous identifier.


Installer une clef

Allez sur la page de gestion des clefs du compte désiré.
Vous trouverez en bas de la page un formulaire de saisie de nouvelle clef :



Vous allez donc chercher votre clef que vous avez créer précedemment :
bert@bow:~$ cd ~/.ssh
bert@bow:~/.ssh$ cat id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAIEArLty6ylYMBf1cnFqnr8VcHJ2gRs4C2+sUTlbF9J1nbKZCHohQnLDHPBRrbq7F
aD+W7XgEuVEhfu1hi/xVIrmxh09xZMX3gmh63FzN2NYCFXpf8ZIff7mfvzDsb0n4/t2JP0Q90KjT+sxhhtZ1YpLgsjPtGRLy
6vMFUMFr88QTT0=
bert@bow


Notez bien que l'on prend la clef PUBLIQUE .
Collez-la dans le cadre prévu à cet effet :



Note : seule la partie "active" de la clef sera conservée. Si vous désirez mettre un commentaire pour reconnaitre vos clef, mettez-le dans la case "Commentaire".

Validez et votre clef sera alors rajoutée sur votre compte :



Cette étape peut prendre jusqu'à 10 minutes. Votre clef sera ensuite affichée comme cela, si tout c'est bien déroulé :



Supprimer une clef

Allez sur la page de gestion des clefs du compte désiré. Votre clef à supprimer doit apparaître comme cela :




Remarquez la poubelle à droite. En cliquant dessus, vous lancez la procédure de suppression de la clef.
Attention : aucune confirmation n'est demandée.





Votre clef peut mettre jusqu'à 10 minutes pour être supprimée.

Si c'était la dernière clef de votre compte, vous aurez un affichage tel que :



Scp

La commande est "scp" . Elle s'utilise comme un "cp" classique, mais permet de copier via un cannal sécurisé entre 2 machines distantes.

"scp" est fournis dans le package "ssh".

La syntaxe pour designer un element (fichier ou repertoire) distant est : LOGIN@SERVEUR:LE_CHEMIN

Ce qui donne si on prend par exemple :

  • login = aa00-ovh-0,
  • serveur = backup.ovh.net,
  • le fichier = /log/hier.txt.


aa00-ovh-0@backup.ovh.net:/log/hier.txt


Donc,

à partir d'une machine possédant une clef :

~# scp /tmp/fichier.txt aa00-ovh-0@backup.ovh.net:/

Copiez le fichier de votre disque /tmp/fichier.txt sur votre compte E-Backup? qui se nomme "aa00-ovh-0" dans cet exemple.

Et inversement :

~# scp aa00-ovh-0@backup.ovh.net:/un_autre_fichier.txt /home/moi/

Récupérez le dit fichier "/un_autre_fichier.txt" sur votre compte E-Backup? (qui se nomme "aa00-ovh-0" dans cet exemple) et déposez-le dans le repertoire "/home/moi/" (s'il existe).

ATTENTION : comme "cp", "scp" necessite l'option -r pour copier des répertoires.


Rsync

"rsync" est un logiciel de transfert de données de façon intelligente.

"rsync" est un programme indépendant de ssh. Le site officiel est : http://rsync.samba.org/.

Il fait une comparaison entre le contenu local et le contenu distant et ne transfère que le necessaire. C'est-à-dire qu'il ne transférera un fichier que s'il à été modifié depuis la dernière sauvegarde ou s'il est nouveau. De même avec les répertoires.

Par contre, si un fichier a été supprimé, il ne le supprimera sur le compte distant (ou local quand vous récupérez vos données) que si vous passez l'option autorisant un tel comportement. Cette option est --delete et est à manier avec précaution.

La ligne standard d'options pour utiliser rsync est : -alHvzcpog -e 'ssh'.

Le -e 'ssh' spécifie l'utilisation du protocole ssh comme moyen de transport. C'est le seul moyen d'utiliser rsync sur un compte E-Backup?.

Pour désigner un élement distant, la syntaxe est : LOGIN@SERVEUR:rsync/REPERTOIRE

Ce qui donne si on prend par exemple :

  • login = aa00-ovh-0,
  • serveur = backup.ovh.net,
  • le répertoire = /log (qui se situe en ftp a l'emplacement /rsync/log).


aa00-ovh-0@backup.ovh.net:rsync/log

Vous pouvez tout aussi bien ne specifier aucun répertoire, ce qui aura pour effet de travailler à la racine du répertoire rsync distant :
aa00-ovh-0@backup.ovh.net:rsync

Un exemple pour sauver votre site qui se trouve dans "/home/site1" vers le repertoire "/site1" sur le compte "aa00-ovh-0" :
rsync -alHvzcpog -e 'ssh' /home/site1 aa00-ovh-0@backup.ovh.net:rsync/site1

Pour récupérer : inverser les deux opérandes :
rsync -alHvzcpog -e 'ssh' aa00-ovh-0@backup.ovh.net:rsync/site1 /home/site1

ATTENTION :
aa00-ovh-0@backup.ovh.net:rsync/site1 et
aa00-ovh-0@backup.ovh.net:rsync/site1/ n'est pas pareil !!!

La différence se trouve dans le / final. S'il est absent, rsync travaillera sur le repertoire indiqué. S'il est présent, il travaillera DANS le répertoire indiqué. C'est-à-dire qu'il va créer un SOUS-REPERTOIRE dans le répertoire.

Cette notion est assez dure à expliquer, mais se comprend trés vite par des essais pratiques. Testez par vous-même pour vous rendre compte de cette différence.

NOTE : Les proprietaires (owner) ne sont pas gardés avec rsync.