Ssh:Installation parametrage:Authentification par cle
Authentification par clé
Pré-requis
De nombreux sites et forums présentent encore la notation SSH1 pour le fichier des clés publiques "authorized_keys".
Dans le présent document, nous adoptons le standard SSH2. Ainsi, ce fichier sera nommé authorized_keys2.
Génération des clés
Pour la génération des clés, deux possibilités :
- Vous avez physiquement accès à la machine distante (solution 1)
- Vous n'avez pas physiquement accès à la machine distante (solution 2)
Ces deux solutions sont détaillées ci-dessous.


- Cygwin doit nécessairement être installé sur la machine locale pour cette procédure. N'utilisez pas Puttygen pour générer les clés car elles sont dans un format différent et vous ne pourrez pas vous connecter. En revanche, comme nous le verrons sur Linux, Puttygen pourra être utilisé.
- Nous supposerons que la machine distante s'appelle FAMILYCOMPUTER et que l'on possède un compte a011830.
Machine locale (connexion directe via Cygwin) | Machine distante (connexion distante avec PuTTY) |
---|---|
ssh-keygen –t rsa cd ~/.ssh dir |
|
login a011830 mkdir .ssh exit |
|
scp id_rsa.pub [email protected]:~/.ssh/newkey | |
login a011830 cd ~/.ssh cat newkey cat newkey >> authorized_keys2 rm newkey chmod 600 authorized_keys2 exit |
Vérification de l'authentification par clé publique
Quelle que soit la solution retenue, la vérification pourra s'effectuer soit par Cygwin (à condition que la clé privée soit présente dans le répertoire /home/nom_utilisateur/.ssh de la machine locale), soit par PuTTY. Nous présentons les tests avec PuTTY car la première solution est relativement simple.
Modification du fichier httpd_config
La modification du fichier httpd_config ne pourra se faire que si vous avez un accès physique à la machine distante.
Après avoir vérifié que vous pouvez vous connecter avec la clé publique, vous pouvez interdire l'authentification par mot de passe pour renforcer la sécurité de la machine distante. Ainsi, seuls les utilisateurs qui possèderont une clé privée valide pourront se connecter.

Ouvrez le fichier httpd_config avec VIM (http://www.vim.org/download.php#pc) pour le modifier comme suit :

http://www.delafond.org/traducmanfr/man/man5/sshd_config.5.html
Utilisation de Pageant
Qu'est-ce que Pageant?
Pageant signifie "Putty Authentication Agent". Il s'agit d'un programme qui se trouve dans le package d'installation de PuTTY et qui permet de conserver en mémoire des passphrase afin que vous n'ayiez pas à les ressaisir à chaque connexion.

- Afin de conserver une sécurité maximale, Pageant ne stocke pas les couples clé/passphrase sur le disque dur mais en mémoire directement, ce qui a pour conséquence directe une purge de son cache à chaque démarrage.
- Il est néanmoins possible de créer une commande au démarrage afin d'appeler Pageant avec les clés, mais chaque passphrase devra être saisie manuellement :
Comment se servir de Pageant?
1. Lancez Pageant (![]() | |
2. Dans les icônes en bas à droite de l'écran, double cliquez sur Pageant. | ![]() |
3. Puis cliquez sur "Add Key". Une boîte de dialogue vous invite à chercher la clé privée. | ![]() |
4. La passphrase associée à votre clé privée vous est alors demandée. Lorsque vous l'avez saisie, cliquez sur OK. Elle s'ajoute alors à la liste des clés. | ![]() |
5. Vous pouvez cliquer sur Close.
Remarque : Dorénavant, vous n'avez plus besoin de spécifier votre clé privée dans PuTTY. Seuls les champs HostName, port et login seront nécessaires. | ![]() |