Configurer l’Authentification par Clé Publique pour SSH : Un Guide Étape par Étape

L’Authentification par Clé Publique est un moyen sécurisé de se connecter à une machine distante sans utiliser de mots de passe. Au lieu de saisir un mot de passe pour chaque authentification, vous utilisez une paire de clés cryptographiques : une clé publique, qui réside sur la machine distante, et une clé privée, qui reste sur votre appareil local. Cet article de blog vous guidera à travers le processus simple de configuration de l’Authentification par Clé Publique pour SSH sur votre système Linux.

Pourquoi Utiliser l’Authentification par Clé Publique ?

  • Sécurité Renforcée : Contrairement aux mots de passe, qui peuvent être devinés ou interceptés, la cryptographie par clé publique est considérablement plus sécurisée.
  • Commodité : Une fois configurée, la connexion à vos machines distantes devient plus rapide et nécessite moins d’effort.

Instructions Étape par Étape

Étape 1 : Générer Vos Clés

Pour commencer, vous devez créer votre paire de clés publique-privée. Ouvrez votre terminal et exécutez la commande suivante :

ssh-keygen

Cette commande vous guidera à travers le processus de génération des clés. Par défaut, elle créera deux fichiers :

  • id_rsa : Votre clé privée (gardez cela en sécurité !)
  • id_rsa.pub : Votre clé publique (c’est celle que vous partagerez)

Étape 2 : Copier la Clé Publique sur la Machine Distante

Ensuite, il est temps de transférer votre clé publique sur la machine distante. Cela nécessite un accès au serveur distant sur lequel vous souhaitez vous connecter. Vous devrez ajouter le contenu de votre fichier id_rsa.pub au fichier ~/.ssh/authorized_keys sur le serveur distant. Vous pouvez le faire efficacement avec la commande suivante (après vous être connecté à la machine distante) :

echo "votre-clé-publique" >> ~/.ssh/authorized_keys

Remarque : Assurez-vous de remplacer “votre-clé-publique” par le contenu réel de votre fichier id_rsa.pub.

Étape 3 : Définir les Permissions pour la Sécurité

Pour vous assurer que vos clés privées sont stockées en toute sécurité, vous devez définir les bonnes permissions. Localement, exécutez :

chmod 600 ~/.ssh/id_rsa*

Et sur la machine distante, définissez les permissions pour le fichier des clés autorisées comme suit :

chmod 600 ~/.ssh/authorized_keys

Ces commandes restreignent l’accès à vos clés, de sorte qu’elles ne puissent pas être lues par d’autres utilisateurs.

Étape 4 : Tester Votre Configuration

Vous êtes maintenant prêt à tester votre configuration ! Utilisez la commande SSH pour vous connecter à la machine distante :

ssh nom-utilisateur@machine.distante

Si tout est correctement configuré, il vous demandera la phrase de passe pour votre clé privée au lieu de demander le mot de passe de l’utilisateur distant.

Étape 5 : Utiliser SSH-Agent pour la Commodité

Taper la phrase de passe de votre clé à chaque fois que vous vous connectez peut devenir fastidieux. Pour simplifier votre processus, vous pouvez utiliser ssh-agent, qui conserve vos clés déchiffrées en mémoire. Voici comment le configurer :

  1. Lancez ssh-agent en utilisant la commande :

    eval $(ssh-agent)
    

    Vérifiez s’il est déjà en cours d’exécution en exécutant :

    echo $SSH_AUTH_SOCK
    
  2. Ajoutez votre clé privée à l’agent avec :

    ssh-add ~/.ssh/id_rsa
    

    Après avoir entré votre phrase de passe une fois, vous n’aurez plus à la saisir avant de la retirer de l’agent.

  3. Si vous avez besoin de vider vos clés de l’agent, exécutez simplement :

    ssh-add -D
    

Conclusion

Configurer l’Authentification par Clé Publique pour SSH est un moyen puissant d’améliorer à la fois votre sécurité et votre efficacité lors de l’accès à des systèmes distants. En suivant ces étapes, vous créez un environnement sécurisé, sans mot de passe, qui peut vous faire gagner du temps et réduire les risques associés à l’authentification par mot de passe traditionnelle.

Vous pouvez maintenant vous connecter en toute confiance à vos machines distantes de manière sécurisée et facile ! N’hésitez pas à vous référer à ce guide lors de la configuration de l’Authentification par Clé Publique sur vos systèmes.