GNU/Linux >> Tutoriels Linux >  >> Cent OS

Configurer les clés SSH sur CentOS 7 - Processus étape par étape ?

SSH (Secure Shell) est un protocole crypté utilisé pour communiquer en toute sécurité entre le système client et le serveur. Vous pouvez effectuer des tâches administratives, vous connecter à votre système à distance et accéder aux fichiers. C'est un moyen très sécurisé de communiquer avec le serveur à l'aide de clés SSH, un moyen également pratique que l'authentification par mot de passe.

Chez LinuxAPT, dans le cadre de nos services de gestion de serveur, nous aidons régulièrement nos clients à effectuer des requêtes SSH associées.

Dans ce contexte, nous verrons comment créer des clés SSH sur le système CentOS 7 et comment les copier sur le serveur de différentes manières.


Comment créer des clés SSH sur CentOS ?

je. Avant de poursuivre cette procédure de configuration, assurez-vous que vous utilisez un utilisateur avec des privilèges sudo.

ii. Ensuite, commencez par générer une paire de clés sur le système client à l'aide de la commande ci-dessous :

$ ssh-keygen

Par défaut, ssh-keygen générera une paire de clés RSA 2048 bits.

iii. Vous pouvez également créer une clé plus grande de 4096 bits en passant simplement -b 4096 dans le drapeau comme indiqué ci-dessous :

$ ssh-keygen -t rsa -b 4096

Il affichera la sortie comme ci-dessous :

Output
Generating public/private rsa key pair.
Enter file in which to save the key (/home/yourusername/.ssh/id_rsa):

iv. Appuyez sur la touche Entrée pour enregistrer les paires de clés dans le répertoire ./ssh qui est l'emplacement par défaut ou vous pouvez spécifier l'emplacement selon votre choix.

Après cela, vous serez invité à entrer une phrase de passe sécurisée comme ci-dessous. Il est recommandé de définir une phrase secrète qui ajoutera une couche de sécurité supplémentaire à vos clés. Il est obligatoire, vous pouvez donc l'ignorer en appuyant simplement sur la touche Entrée.

Output
Enter passphrase (empty for no passphrase):

Il générera une sortie comme suit :

Your identification has been saved in /home/yourusername/.ssh/id_rsa.
Your public key has been saved in /home/yourusername/.ssh/id_rsa.pub.

L'empreinte digitale de la clé est :

SHA256:Vh9pii66/e/md3LLJUuUILZuz37uGg8Yeokkdv7xwCE [email protected]
The key's randomart image is:
+---[RSA 4096]----+
|                 |
|             .   |
|          + =    |
|         + * o . |
|      o E = . o  |
|     . B * = .   |
|      . = X o o .|
|     o . +.*o*++ |
|    o....==o*OB. |
+----[SHA256]-----+

Vos clés publiques et privées sont prêtes à être utilisées pour s'authentifier auprès de votre serveur CentOS.

Vous pouvez également vérifier que vos fichiers sont générés ou non en tapant :

$ ls ~/.ssh/id_*

Il affichera une sortie comme celle-ci :

/home/yourusername/.ssh/id_rsa /home/yourusername/.ssh/id_rsa.pub


Comment copier la clé publique sur le serveur CentOS ?

Ici, nous allons placer la clé publique sur notre serveur CentOS. C'est un moyen simple et rapide de copier des fichiers publics à l'aide de l'utilitaire ssh-copy-id.

je. Exécutez la commande ci-dessous pour le faire :

$ ssh-copy-id username@server_ip_address

Vous serez invité à saisir le mot de passe de votre nom d'utilisateur :

Output
username@server_ip_address's password:

Une fois l'authentification de l'utilisateur réussie, la clé publique sera ajoutée au fichier ~/.ssh/authorized_keys sur l'utilisateur distant et la connexion sera déconnectée :

Output
Number of key(s) added: 1

ii. Vous pouvez maintenant essayer de vous connecter à votre machine avec la commande ssh username@server_ip_address et vérifier que seules les clés ajoutées que vous souhaitez ajouter.

Si l'utilitaire ssh-copy-id n'est pas installé sur votre système client, vous pouvez utiliser la commande suivante pour copier la clé publique :

$ cat ~/.ssh/id_rsa.pub | ssh remote_username@server_ip_address "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

Assurez-vous que vous disposez d'un accès SSH basé sur un mot de passe à votre serveur.


Comment se connecter au serveur à l'aide des clés SSH ?

Maintenant, vous devriez pouvoir vous connecter à la machine distante sans le mot de passe de l'utilisateur distant.

je. Essayez de vous connecter en utilisant la commande SSH :

$ ssh username@server_ip_address

Si vous essayez de vous connecter pour la première fois, il se peut que vous soyez invité comme suit.

ii. Tapez oui et appuyez sur la touche Entrée pour continuer :

Output
The authenticity of host '192.168.43.9 (192.168.43.9)' can't be established.
ECDSA key fingerprint is ed:ed:f4:g9:66:ge:53:48:e1:55:00:fd:6d:d7:22:fe.
Are you sure you want to continue connecting (yes/no)? yes

Maintenant, si vous n'avez pas défini de phrase secrète pour vos clés, vous serez immédiatement connecté sans demander de phrase secrète. Sinon, il vous sera demandé d'entrer la phrase de passe. Après une authentification réussie, une nouvelle session shell ouvrira votre compte utilisateur sur le serveur CentOS.


Comment désactiver l'authentification par mot de passe SSH ?

Cela ajoutera une couche de sécurité supplémentaire si vous désactivez l'authentification par mot de passe pour SSH. Avant de commencer le processus, assurez-vous que vous pouvez vous authentifier sur votre serveur sans entrer de mot de passe et que vous devez avoir un compte utilisateur activé sudo.

je. Essayez de vous connecter à votre serveur en utilisant ssh :

$ ssh username@server_ip_address

ii. Modifiez maintenant le fichier de configuration SSH situé dans /etc/ssh/sshd_config :

$ sudo nano /etc/ssh/sshd_config

Trouvez la directive PasswordAuthentication et si la ligne est commentée, décommentez la ligne et définissez la valeur sur "non" comme indiqué ci-dessous :

PasswordAuthentication no

iii. Enregistrez et fermez le fichier.

iv. Vous devez redémarrer le service SSH en utilisant la commande ci-dessous :

$ sudo systemctl restart sshd

Désormais, l'authentification par mot de passe est désactivée sur votre serveur CentOS.



Cent OS
  1. Comment configurer des clés SSH

  2. Installer PHP Composer sur CentOS 8 - Processus étape par étape ?

  3. Installer Microsoft Teams sur CentOS 8 - Processus étape par étape ?

  4. Installer Wine sur CentOS 8 - Processus étape par étape pour le faire ?

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

Comment configurer des clés SSH sur CentOS 7

Comment configurer des clés SSH sur Debian 9

Comment configurer des clés SSH sur Debian 10

Comment configurer les clés SSH – Windows OS ?

Comment générer une clé SSH dans CentOS 8

Comment configurer des clés SSH sur Debian 11 Linux