BLOG

Mettre en place un système d’authentification par clé ssh (RSA)

Introduction

Cet article a pour but de vous montrer comment mettre en place une authentification sécurisée entre deux macheins ( un ordinateur qui doit se connecter à un serveur, ou bien deux serveurs qui doivent communiquer entre eux, pour des sauvegardes toutes les soirs par exemple).

 

Sur la machine qui doit se connecter:

Pour cela il vous suffit de lancer la commande suivante:

$ ssh-keygen -t rsa

Generating public/private rsa key pair.
Enter file in which to save the key (/home//.ssh/id_rsa):
Created directory '/home//.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home//.ssh/id_rsa.
Your public key has been saved in /home//.ssh/id_rsa.pub.
The key fingerprint is:
04:f0:35:21:10:f3:e5:b6:54:59:25:1a:75:97:67:27 @
The key's randomart image is:

 

Si vous executez, la commande ssh-keygen -t rsa, le programme vous posera plusieurs questions:

  • Où seront enregistrées les clés sur votre système.
  • Une passphrase (Si vous voulez que les connexions soit faite automatiquement il ne faut pas mettre de passphrase, sinon vous serez obligé de la taper avant chaque connexion...)

 

A présent, nous devons copié la clé public sur la machine où l'on va se connecter. Voilà c'est fini pour la machine qui doit se connecter, passons à la machine où l'on doit se connecter.

 

Sur la machine où l'on doit se connecter:

Un fois sur la machine qui doit accepter les connexions par cette clé, il faut copier la clé public dans le fichier: ~/.ssh/authorized_keys

Et voilà le tour est joué, il ne vous reste plus qu'à tester la connexion 🙂

 

Sur la machine qui doit se connecter:

Lorsque vous faite votre connexion ssh voici la ligne qui doit apparaitre

Warning: Permanently added '' (RSA) to the list of known hosts.

Si vous voyez cette ligne et que vous vous êtes connecté sans qu'on vous demande de mot de passe, c'est normal le système a bien utilisé votre clé.

 

Conclusion

Outre le fait d'être plus partique que de taper son mot de passe à chaque fois qu'on se connecte sur une machine, cela permet d'automatiser des taches, chose impossible si on vous demande un mot de passe.

Et au niveau de la sécurité, vous pouvez alors empêcher les connexions sans clés, ce qui évite toutes les attaques brutes force contre votre serveur.

 

VOUS AVEZ UN PROJET ?

Nous sommes à votre écoute pour le mettre en place (...)