Comment créer une authentification ssh par clé publique : Différence entre versions

De Free 4 Funs
Aller à : navigation, rechercher
 
Ligne 48 : Ligne 48 :
 
   {{command|sudo nano /etc/ssh/sshd_config}}
 
   {{command|sudo nano /etc/ssh/sshd_config}}
  
−
Rechercher '''#AuthorizedKeysFile      %h/.ssh/authorized_keys''' et remplacer par '''AuthorizedKeysFile      %h/.ssh/authorized_keys'''.
 
  
 
Rechercher '''PasswordAuthentication yes''' et remplacer par '''PasswordAuthentication no'''
 
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 :
 +
  {{command|AuthorizedKeysFile      %h/.ssh/authorized_keys}}
 +
  
 
Redémarrer le serveur ssh :
 
Redémarrer le serveur ssh :
Ligne 72 : Ligne 79 :
  
  
−
La clef publique pourra être donné, la clef est quasi-indecryptable sans la passphrase.
+
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.

Version actuelle en date du 12 septembre 2026 à 12:39

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

  • serveur SSH (installé par défaut sur un serveur dédié)
  • puTTY
  • puttygen

Après l'avoir téléchargé, exécuter le logiciel puttygen.


F4f puttygen.jpg

Cliquez sur le bouton Generate puis bouger votre souris jusqu'à la fin.

F4f puttygen generate.jpg

F4f puttygen generate ok.jpg

Dans le champ Key Passphrases, mettez un commentaire.
Warning.png La passphrase est très importante. C'est elle qui protège votre clef privée.

F4f puttygen generate passphrases.jpg

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 Icon11.gif 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 :


Command
cd ~

Command
mkdir -p .ssh

Command
nano .ssh/authorized_keys

La clef publique se trouve ici : F4f puttygen key.jpg

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 :

Command
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 :

Command
AuthorizedKeysFile  %h/.ssh/authorized_keys


Redémarrer le serveur ssh :

Command
sudo /etc/init.d/ssh restart

Warning WARNING
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 Icon11.gif 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.