Clé SSH- comment créer une clé SSH (Debian 10)

De Ikoula Wiki
Jump to navigation Jump to search

1) Qu'est-ce qu'une clé Secure Shell ?

Une clé Secure Shell, le plus souvent appelée clé SSH, vous permet de créer une connexion sécurisée sur un réseau non-sécurisé.

Une clé SSH est composée de deux parties :

Une clé publique qui est à la disponibilité de tous.

Une clé privée qui est gardée secrète. La clé privée est utilisée pour le déchiffrement de messages chiffrés à l'aide d'une clé publique correspondante.

L'avantage d'utiliser une clé SSH pour la création d'une connexion entre ordinateurs est que seulement la clé publique a besoin d'être échangée via le réseau. Les transmissions chiffrées avec une clé publique peuvent uniquement être décodées avec la clé privée correspondante et un mot de passe. Seule la clé publique est échangée sur le réseau. Le mot de passe correspondant à la clé est quant à lui maintenu secret.

2) NOTES de Procédure

Pour rendre cet article plus compréhensible :

La machine (a) veut se connecter en SSH à la machine cible (b) avec une clé SSH.

3) Générer une clé SSH

Sur la machine (a) veuillez bien insérer le suivant:

ssh-keygen

(Facultatif) Par défaut, ssh-keygen créera une clé de 2048 bits, si vous voulez utiliser un chiffrement supérieur exemple 4096 bits, vous pouvez utiliser le suivant:

ssh-keygen -t rsa -b 4096

La commande affichera le résultat suivant et vous invitera à enregistrer la clé nouvellement créée : (Cliquer sur entrée)

Key-1.JPG

Notes: Si vous aviez précédemment généré des clés SSH sur la machine et vous avez un message pour "Overwrite" le fichier et vous choisissez d'écraser la clé sur le disque, vous ne pourrez plus vous authentifier à l'aide de la clé précédente. Soyez très prudent en choisissant oui, car il s'agit d'un processus destructeur qui ne peut être inversé.

Sur l'option "Enter passphrase"

(Falcutatif) Vous pouvez saisir ici une phrase de passe sécurisée, ce qui est fortement recommandé. Une phrase de passe ajoute une couche supplémentaire de sécurité pour empêcher les utilisateurs non autorisés de se connecter à l'ordinateur, mais il vous sera demandé d'entrer cette phrase à chaque connexion.

Si tout est correct, vous verrez ce qui suit :

Key-2.JPG

4) Copier la clé publique sur le serveur auquel vous souhaitez accéder avec la clé SSH.

Notes: Nous allons utiliser la méthode de copie avec l'outil ssh-copy-id.

Si vous rencontrez des problèmes avec cette méthode, suivez le point (7) de cet article.

En raison de sa simplicité, cette méthode est fortement recommandée si elle est disponible.

Veuillez bien préparer vos accès ssh de la machine cible (b) pour pouvoir vous connecter.

Toujours sur la machine (a) veuillez bien insérer le suivant:

ssh-copy-id utilisateur@IP_de_la_machine(b)_cible

Exemple: ssh-copy-id root@178.170.00.00

Si vous voyez le message suivant, est parfaitement normal veuillez bien entrer (YES).

Key-3.JPG

Veillez bien introduire le mot de passe SSH de la machine(b) cible et vous aurez le retour suivant:

Key-4.JPG

5) S'authentifier sur un serveur en utilisant des clés SSH

Si vous avez suivi avec succès la procédure ci-dessus, vous devriez pouvoir vous connecter à l'hôte distant sans le mot de passe du compte distant.

ssh utilisateur@IP_de_la_machine(b)_cible
Exemple: ssh root@178.170.00.00

Key-5.JPG

6) Désactiver l'authentification par mot de passe sur votre serveur

Notes: Maintenant que vous pouvez vous connecter au serveur (machine(b)) sans mot de passe avec votre clé SSH il est temps de désactiver "authentification par mot de passe ".

Sur la machine(b) en utilisateur root veuillez bien insérer le suivant:

nano /etc/ssh/sshd_config

Veuillez bien trouver la ligne suivant et décommentez la ligne et mettez la valeur à "non".

Key-7.JPG

Il vous reste a sauvegarder le fichier CTRL+O et a sortir du éditeur nano CTRL+X et en suit redémarrer le service (SSH).

systemctl restart ssh

Important: Par précaution, ouvrez une nouvelle fenêtre de terminal et vérifiez que le service SSH fonctionne correctement avant de fermer cette session :

7) Autres méthodes pour copier la clé publique SSH sur la machine cible (b)

Via un script qui créera les dossiers nécessaires et copiera la clé publique via une connexion SSH.


cat ~/.ssh/id_rsa.pub | ssh utilisateur@IP_de_la_machine(b)_cible "mkdir -p ~/.ssh && touch ~/.ssh/authorized_keys && chmod -R go= ~/.ssh && cat >> ~/.ssh/authorized_keys"


Exemple: cat ~/.ssh/id_rsa.pub | ssh root@178.170.00.00 "mkdir -p ~/.ssh && touch ~/.ssh/authorized_keys && chmod -R go= ~/.ssh && cat >> ~/.ssh/authorized_keys"

Notes:

cat : Pour lire le contenu de la clé publique SSH sur notre ordinateur local et le transmettre par une connexion SSH au serveur distant.

~/.ssh/authorized_keys : Dossier de destination où nous allons copier la clé publique et les autorisations appropriées (chmod -R).

>> Ce symbole vous permet de copier la clé sans détruire le contenu si le fichier existe déjà.

Si vous avez suivi avec succès la procédure ci-dessus, vous devriez pouvoir vous connecter à l'hôte distant sans le mot de passe du compte distant.

ssh utilisateur@IP_de_la_machine(b)_cible
Exemple: ssh root@178.170.00.00

Key-5.JPG

8) Autres méthodes Copie manuelle de la clé publique

Sur la machine(a) où les clés sont créées.

Pour afficher le contenu de votre clé id_rsa.pub, tapez ceci sur votre ordinateur local :

cat ~/.ssh/id_rsa.pub

Vous verrez le contenu de la clé, qui devrait ressembler à ceci :

ssh-rsa AAAAB3NzaC1yc2EAAAADAaR7BoB4p6yV9B5aB76N5S/lo9YiPZ6fCGY9hOvmnfuDoxZ43cl5RJHh+K/HjccoSXcCsJl6N/CRyfn44IZaFR+tb0cHGI5GC9FxAD1Q0vDSR+qSp5pBKRb9lL7WbKcpVSmI2Lbor6I25Y4T4csJFm67zJG27xwF root@SSH1

Une fois que vous avez récupéré la clé, vous voulez accéder à la machine(b) sur laquelle vous voulez installer la clé pour y accéder plus tard avec la clé SSH.

Une fois que vous avez accès à votre compte sur le serveur distant, vous devez vous assurer que le répertoire ~/.ssh existe. Cette commande créera le répertoire si nécessaire, ou ne fera rien s'il existe déjà :

mkdir -p ~/.ssh

Maintenant, vous pouvez créer ou modifier le fichier authorized_keys dans ce répertoire. Vous pouvez ajouter le contenu de votre fichier id_rsa.pub à la fin du fichier authorized_keys, en le créant si nécessaire, en utilisant cette commande :

echo contenu_de_la_clé_publique_récupéré_dans_la_machine(a) >> ~/.ssh/authorized_keys
Exemple: echo ssh-rsa AAAAB3NzaC1yc2EAAAADAaR7BoB4p6yV9B5aB76N5S/lo9+K/HjccoSXcCsJl6N/CRyfn44I1Q0vDSR+qSp5pBKRb9lL7WbKcpVSmI2Lbor6I25Y4T4csJFm67zJG27xwF root@SSH1 >> ~/.ssh/authorized_keys

Pour finir nous donnerons les autorisations nécessaires aux dossiers et fichiers

chmod -R go= ~/.ssh

Conclusion

Il ne fait aucun doute que SSH est un outil extrêmement utile pour ceux qui souhaitent communiquer avec une autre machine de manière sécurisée et non compromettante. Nous espérons que ce tutoriel vous aidera dans votre vie quotidienne.


Vous n'êtes pas autorisé à publier de commentaire.