Comment créer une authentification ssh par clé publique
Introduction
Nous allons vous montrer comment renforcer d'avantage la connexion à votre serveur en créant une clé publique SSH qui vous permettra de passer outre la façon dont vous vous connectez à votre serveur (identifiant et mot de passe).
Requis
Après l'avoir téléchargé, exécuter le logiciel puttygen.
Cliquez sur le bouton Generate puis bouger votre souris jusqu'à la fin.
Dans le champ Key Passphrases, mettez un commentaire.
La passphrase est très importante. C'est elle qui protège votre clef privée.
Sauvegarder la clef publique en cliquant sur Save public key, id_rsa.pub par exemple et faite de même pour la clef privée en ne lui donnant pas d'extension
id_rsa, elle prendre l'extension .ppk par défaut !
La clef privée ne devra JAMAIS être donné !
Maintenant, nous allons importer la clef publique au serveur, connectez vous en SSH à votre serveur :
| |
| cd ~ |
| |
| mkdir -p .ssh |
| |
| nano .ssh/authorized_keys |
La clef publique se trouve ici :
Copier la clef entière en ignorant la dernière partie rsa-key-20131222 (20131222 correspond à la date de création) puis coller là dans la fenêtre pUTTY.
Vérifier que toute la clef soit sur une seule ligne ! Faite CTRL + X puis O pour sauvegarder les modifications.
Il nous reste une dernière étape avant de conclure, modifier la configuration de SSH :
| |
| sudo nano /etc/ssh/sshd_config |
Rechercher PasswordAuthentication yes et remplacer par PasswordAuthentication no
Rechercher PermitRootLogin yes et remplacer par PermitRootLogin no ou avec prohibit-password ce qui exclus la connexion avec un mot de passe.
Vérifier que PubkeyAuthentication soit définis sur yes.
Vérifier que la directive AuthorizedKeysFile est définie sur :
| |
| AuthorizedKeysFile %h/.ssh/authorized_keys |
Redémarrer le serveur ssh :
| |
| sudo /etc/init.d/ssh restart |
| |
| Par précaution, ne fermer pas la connexion de pUTTY, attendez d'être sûr que vous avez correctement suivis notre tutoriel ! |
Ouvrez une nouvelle instance de pUTTY, sélectionner votre serveur puis cliquer sur Load', dans la colonne de gauche, allez dans l'option SSH
Auth puis sur Browse... et rechercher la clef privée (.ppk).
Remonter à l'onglet Session, mettez en survrilance votre serveur et finaliser en cliquant sur Save.
Lors de votre prochaine connexion, vous devriez voir s'afficher ceci :
login as: serveur Authenticating with public key "rsa-key-20131222" Passphrase for key "rsa-key-20131222":
Mettez la passphrase puis Entrée.
Félicitation, vous avez sécurisé un peu plus l'accès à votre serveur.
La clé publique peut être copiée sur le serveur et peut être communiquée sans compromettre l'authentification. La clé privée, elle, ne doit jamais être communiquée. Sa passphrase protège la clé privée en cas de vol du fichier.



