Une fois que votre serveur dédié est livré, vous souhaitez maintenant pouvoir vous connecter dessus. Pour ce faire, la plupart du temps, vous utiliserez SSH.
Une fois que votre serveur dédié est livré, vous souhaitez maintenant pouvoir vous connecter dessus. Pour ce faire, la plupart du temps, vous utiliserez SSH.
Qu’est-ce que SSH ?
Secure Shell ou SSH vous permet d’administrer à distance vos machines, via un terminal.
SSH permet de se connecter à l'aide d'un mot de passe ou d'une paire de clés SSH. La paire de clés SSH repose sur des procédés cryptographiques similaires aux certificats SSL, qui utilisent une partie privée (qui n'est jamais communiquée) et une partie publique (qui peut être transmise librement).
Secure Shell ou SSH vous permet d’administrer à distance vos machines, via un terminal.
SSH permet de se connecter à l'aide d'un mot de passe ou d'une paire de clés SSH. La paire de clés SSH repose sur des procédés cryptographiques similaires aux certificats SSL, qui utilisent une partie privée (qui n'est jamais communiquée) et une partie publique (qui peut être transmise librement).
Résumé du procédé cryptographique
Au cours de la connexion à la machine, le client informe le serveur du nom d'utilisateur avec lequel il veut se connecter.
Le serveur l'informe ensuite qu'il peut procéder à sa tentative de connexion avec une clé publique.
Le client informe le serveur de l'empreinte de la clé publique qu'il va utiliser, et envoie un message signé avec la clé privée correspondante.
Le serveur vérifie que le message est bien signé à l'aide de la clé publique qu'il connaît. Le client est donc authentifié, et autorisé à se connecter.
Au cours de la connexion à la machine, le client informe le serveur du nom d'utilisateur avec lequel il veut se connecter.
Le serveur l'informe ensuite qu'il peut procéder à sa tentative de connexion avec une clé publique.
Le client informe le serveur de l'empreinte de la clé publique qu'il va utiliser, et envoie un message signé avec la clé privée correspondante.
Le serveur vérifie que le message est bien signé à l'aide de la clé publique qu'il connaît. Le client est donc authentifié, et autorisé à se connecter.
Comment générer une clé SSH ?
Linux / MacOSX
La procédure sur les systèmes à base UNIX est assez simple :
1. Ouvrez un terminal
2. Lancez la commande ssh-keygen
3. Suivez les instructions de la commande
La procédure sur les systèmes à base UNIX est assez simple :
1. Ouvrez un terminal
2. Lancez la commande ssh-keygen
3. Suivez les instructions de la commande
a : Chemin où vous voulez créer la paire de clés (la valeur par défaut est souvent correcte) ;
b : Si le dossier de destination n'existe pas, il est créé ;
c : Vous avez la possibilité d’entrez une phrase secrète associée à la paire de clés. Elle sera nécessaire pour l'utiliser ;
d : La paire de clés est créée dans le fichier choisi en « a » : « id_rsa » est votre clé privée et « id_rsa.pub » est votre clé publique.
a : Chemin où vous voulez créer la paire de clés (la valeur par défaut est souvent correcte) ;
b : Si le dossier de destination n'existe pas, il est créé ;
c : Vous avez la possibilité d’entrez une phrase secrète associée à la paire de clés. Elle sera nécessaire pour l'utiliser ;
d : La paire de clés est créée dans le fichier choisi en « a » : « id_rsa » est votre clé privée et « id_rsa.pub » est votre clé publique.
Windows
Sous Windows, il vous faut d’abord installer PuTTY, un logiciel émulateur de terminal.
Sous Windows, il vous faut d’abord installer PuTTY, un logiciel émulateur de terminal.
a : Choisissez une clé de type RSA ;
b : Choisissez au moins 4096bits de taille de clé ;
c : Cliquez sur « Generate ». Le processus de génération de clé commence.
a : Choisissez une clé de type RSA ;
b : Choisissez au moins 4096bits de taille de clé ;
c : Cliquez sur « Generate ». Le processus de génération de clé commence.
d : Une fois le processus terminé, vous trouverez ici le contenu de la clé publique, à transmettre à votre infogérant ;
e : Vous pouvez choisir un mot de passe pour votre clé privée ;
f : Sauvegardez votre clé publique ;
g : Sauvegardez votre clé privée.
d : Une fois le processus terminé, vous trouverez ici le contenu de la clé publique, à transmettre à votre infogérant ;
e : Vous pouvez choisir un mot de passe pour votre clé privée ;
f : Sauvegardez votre clé publique ;
g : Sauvegardez votre clé privée.
Options de génération de clés SSH
La commande « ssh-keygen » peut prendre plusieurs options. Nous listons ici celles que nous recommandons :
La commande « ssh-keygen » peut prendre plusieurs options. Nous listons ici celles que nous recommandons :
-
« -t ed25519 » : pour générer une clé avec un algorithme puissant basé sur des courbes elliptiques.
Attention, le nom de la clé sera alors « id_ed25519 » et pas « id_rsa » ;
-
« -m PEM » : force la création au format PEM. Utile si vous devez vous connecter sur un ancien système ;
-
« -b 4096 » : si vous devez utiliser l'algorithme « rsa », cette option permet d'avoir des clés de 4096bits.
Que transmettre à l'infogérant ?
Votre infogérant* a besoin uniquement de la partie publique de votre paire de clé. Si vous avez suivi l'exemple ci-dessus, il s'agit du contenu du fichier « id_rsa.pub ».
Attention : Ne transmettez jamais le fichier « id_rsa ». En effet, sa confidentialité garantit la sécurité de votre paire de clés SSH. Il ne doit donc jamais quitter le poste où il a été créé.
Votre infogérant* a besoin uniquement de la partie publique de votre paire de clé. Si vous avez suivi l'exemple ci-dessus, il s'agit du contenu du fichier « id_rsa.pub ».
Attention : Ne transmettez jamais le fichier « id_rsa ». En effet, sa confidentialité garantit la sécurité de votre paire de clés SSH. Il ne doit donc jamais quitter le poste où il a été créé.
*Infogérant : prestataire en charge de la mise en place, configuration et maintenance de votre serveur informatique.
*Infogérant : prestataire en charge de la mise en place, configuration et maintenance de votre serveur informatique.