GoldZone Web Hosting

Rédigé par Gaëtan Trellu (goldyfruit)

Outils pour utilisateurs

Outils du site


ssh_c_est_quoi_comment_je_l_utilise

SSH ? C'est quoi ? Comment je l'utilise ?

C'est quoi ?

SSH = Secure SHell
Pour avoir plus d'informations sur SSH allez jeter un oeil ici : http://fr.wikipedia.org/wiki/Ssh
N'oubliez pas de lire cette partie du wiki http://wiki.goldzoneweb.info/doku.php?id=securiser_un_minimum_votre_sarge, une partie sur la sécurité SSH y sera abordée.

Comment je l'utilise ?

Pour vous connectez à un serveur SSH vous devez posséder un client Windows ou Linux. Sous Linux c'est simple le client est installé de base par contre sous Windows vous pouvez utiliser un client tel que Putty.
Ici je vais décrire la manipulation pour un client SSH Linux parce que vous le valez bien.

Il y a plusieurs moyen de s'authentifier par SSH, par mot de passe ou par système de clé, je vais décrire la manipulation à suivre pour les deux.
La plus courante étant une authentification par mot de passe car celle-ci est la plus rapide à mettre en place mais pas forcement la plus sûre.

Authentification par mot de passe.

Cette méthode est vraiment simple à utiliser, en effet en une simple ligne la connexion au serveur distant SSH est établie.

On se connecte ?

$ ssh marcel@goldzoneweb.info

Résultat :

The authenticity of host 'goldzoneweb.info' can't be established.
RSA key fingerprint is a3:1c:b0:30:72:12:du:f5:49:ed:5f:87:11:5a:e7:a8.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'goldzoneweb.info' (RSA) to the list of known hosts.

Tapez yes pour dire que vous souhaitez continuer.

Ensuite il vous demande un mot de passe.
Résultat (varie suivant les serveurs) :

Password:
Last login: Mon Oct  9 00:12:47 2006 from 82.232.48.84
Linux mysql 2.6.16-2-686-smp #1 SMP Mon Aug 21 12:29:28 CEST 2006 i686 GNU/Linux
 00:45:24 up 2 days,  6:49,  1 user,  load average: 0.00, 0.00, 0.00

Donc ici vous êtes connecté au serveur goldzoneweb.info en tant que marcel, vous pouvez désormais administrer votre serveur distant.

Authentification par clés public/privé.

Cette méthode est dite plus sécurisée car elle n'oblige pas d'entrer un mot de passe pour se connecter au serveur distant, en effet votre clé privée devra être reconnue par la clé public du serveur distant pour autoriser la connexion.
Cela rend votre connexion quasiment transparente, c'est à dire sans aucune intervention de votre part.

Ce système d'authentification à pour nom : cryptographie asymétrique.
Cette méthode d'authentification SSH est pratique par exemple pour un script de sauvegarde Rsync via SSH mais je ne parlerai pas parler de cela ici. :-x

Comment faire pour générer les clés ?

$ ssh-keygen -t rsa

Appuyez sur la touche Entrée pour les trois questions.
Résultat :

15:31 cartman@serveur ~% ssh-keygen -t rsa
Generating public/private dsa key pair.
Enter file in which to save the key (/home/cartman/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/cartman/.ssh/id_rsa.
Your public key has been saved in /home/cartman/.ssh/id_rsa.pub.
The key fingerprint is:
a4:57:4e:a3:d4:9e:b1:45:64:b7:fa:26:81:b3:3c:a7 cartman@serveur

Maintenant que notre paire de clés est créée il est nécessaire d'envoyer la clé public sur le serveur distant à l'aide de la commande ssh-copy-id.

$ ssh-copy-id -i ~/.ssh/id_rsa.pub chef@192.168.0.4

Résultat :

16:18 cartman@serveur ~% ssh-copy-id -i .ssh/id_rsa.pub chef@192.168.0.4 15
Now try logging into the machine, with "ssh 'chef@192.168.0.4'", and check in:

  .ssh/authorized_keys

to make sure we haven't added extra keys that you weren't expecting.

Donc ici la clès public id_rsa.pub a été envoyée sur le serveur 192.168.0.4 en utilisant le login chef en tant que fichier authorized_keys dans /home/chef/.ssh/

Pour utiliser la connexion par clés il faut modifier quelques options dans /etc/ssh/sshd_config. Dé-commentez ces deux lignes si ce n'est pas déjà fait :

PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys

Il faut relancer SSH pour prendre les modifications en compte :

/etc/init.d/ssh restart

La connexion à SSH se fait désormais sans mot de passe. :)

ssh_c_est_quoi_comment_je_l_utilise.txt · Dernière modification: 2011/01/05 16:05 (modification externe)