GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment générer des clés SSH sur Ubuntu 18.04

Présentation

L'établissement d'une connexion SSH (Secure Shell) est essentiel pour se connecter et gérer efficacement un serveur distant. Les clés chiffrées sont un ensemble d'informations d'identification d'accès utilisées pour établir une connexion sécurisée.

Ce guide vous montrera comment générer des clés SSH sur Ubuntu 18.04. Nous aborderons également la configuration de l'authentification basée sur une clé SSH pour se connecter à un serveur distant sans nécessiter de mot de passe.

Prérequis

  • Un serveur exécutant Ubuntu 18.04, SSH activé sur Ubuntu
  • Un compte utilisateur avec sudo privilèges
  • Accès à une fenêtre de terminal/ligne de commande (Ctrl-Alt-T)

Créer des clés SSH sur Ubuntu

Étape 1 :Générer la paire de clés SSH

Sur votre client système - celui que vous utilisez pour vous connecter au serveur - vous devez créer une paire de codes clés.

Pour générer une paire de codes de clé SSH , saisissez les commandes :

mkdir –p $HOME/.ssh
chmod 0700 $HOME/.ssh
ssh-keygen

Cela créera un répertoire caché pour stocker vos clés SSH et modifiera les autorisations pour ce répertoire. Le ssh-keygen La commande crée une paire de clés RSA 2048 bits.

Pour plus de sécurité, utilisez RSA4096 :

ssh –keygen –t rsa 4096

Si vous avez déjà généré une paire de clés, cela vous demandera de les écraser et ces anciennes clés ne fonctionneront plus.

Le système vous demandera de créer une phrase de passe comme couche de sécurité supplémentaire. Saisissez une phrase de passe mémorable et appuyez sur Entrée .

Étape 2 - Copiez la clé publique sur le serveur Ubuntu

Tout d'abord, obtenez l'adresse IP du serveur Ubuntu auquel vous souhaitez vous connecter.

Dans une fenêtre de terminal, saisissez :

ip a

L'adresse IP du système est répertoriée dans la deuxième entrée :

Sur le client système, utilisez le ssh-copy-id commande pour copier les informations d'identité sur le serveur Ubuntu :

ssh-copy-id [email protected]<server_IP>

Remplacez server_IP avec l'adresse IP réelle de votre serveur.

Si c'est la première fois que vous vous connectez au serveur, vous pouvez voir un message indiquant que l'authenticité de l'hôte ne peut pas être établie :

The authenticity of host '192.168.0.15 (192.168.0.15)' can't be established.

ECDSA key fingerprint is fd:fd:d4:f9:77:fe:73:84:e1:55:00:ad:d6:6d:22:fe.

Are you sure you want to continue connecting (yes/no)?

Tapez oui et appuyez sur Entrée .

Le système vérifiera votre client système pour id_rsa.pub clé précédemment générée. Ensuite, il vous demandera d'entrer le mot de passe du serveur compte d'utilisateur. Saisissez-le (le système n'affichera pas le mot de passe) et appuyez sur Entrée .

Le système copiera le contenu du ~/.ssh/id_rsa.pub du client système dans ~/.ssh/authorized_keys répertoire du serveur système.

Le système devrait afficher :

Number of key(s) added: 1

Méthode alternative pour copier manuellement la clé SSH

Si votre système n'a pas le ssh-copy-id commande, vous pouvez copier la clé manuellement via SSH.

Utilisez la commande suivante :

cat ~/.ssh/id_rsa.pub | ssh [email protected]_host "mkdir -p ~/.ssh && touch ~/.ssh/authorized_keys && chmod -R go= ~/.ssh && cat >> ~/.ssh/authorized_keys"

Étape 3 - Connectez-vous au serveur distant

Pour vous connecter à un serveur distant, saisissez la commande :

ssh [email protected]_IP

Le système ne doit pas demander de mot de passe car il négocie une connexion sécurisée à l'aide des clés SSH. Si vous avez utilisé une phrase secrète de sécurité, vous serez invité à la saisir. Après cela, vous êtes connecté.

Étape 4 - Désactiver l'authentification par mot de passe

Cette étape crée une couche de sécurité supplémentaire. Si vous êtes la seule personne à vous connecter au serveur, vous pouvez désactiver le mot de passe. Le serveur n'acceptera qu'une connexion avec votre clé privée correspondant à la clé publique stockée.

Modifiez le sshd_config fichier :

sudo nano /etc/ssh/sshd_config

Recherchez le fichier et trouvez le PasswordAuthentication option.

Modifiez le fichier et remplacez la valeur par non :

...

PasswordAuthentication no

...

Enregistrez le fichier et quittez, puis redémarrez le service SSH :

sudo systemctl restart ssh

Vérifiez que SSH fonctionne toujours avant de fermer la session :

ssh [email protected]_IP

Si tout fonctionne, vous pouvez fermer et reprendre le travail normalement.


Ubuntu
  1. Comment activer le service SSH dans Ubuntu 22.04 LTS

  2. Comment activer le serveur SSH sur Ubuntu 22.04 Jammy Linux

  3. Comment configurer des clés SSH sur Ubuntu 16.04

  4. Comment configurer des clés SSH sur Ubuntu 18.04

  5. Comment configurer les clés autorisées SSH sur Ubuntu

Comment gérer à distance le serveur Ubuntu avec SSH

Comment installer le serveur SSH dans Ubuntu 20.04

Comment activer le serveur SSH sur Ubuntu 22.04

Comment installer le serveur SSH sur Ubuntu 18.04 LTS

Comment installer le serveur SSH sur Ubuntu 20.04 LTS

Comment installer le serveur SSH sur Ubuntu 22.04 LTS