Maison  >  Article  >  Opération et maintenance  >  Comment implémenter une connexion SSH plus sécurisée sur le serveur CentOS à l'aide de l'authentification par clé

Comment implémenter une connexion SSH plus sécurisée sur le serveur CentOS à l'aide de l'authentification par clé

王林
王林original
2023-07-05 18:15:071871parcourir

Comment utiliser l'authentification par clé pour obtenir une connexion SSH plus sécurisée sur le serveur CentOS

Dans la gestion du serveur, assurer la sécurité du système est crucial. SSH (Secure Shell) est un protocole réseau crypté utilisé pour la connexion à distance aux serveurs Linux et UNIX. Pour renforcer encore la sécurité du serveur, nous pouvons utiliser l'authentification par clé au lieu de la connexion par mot de passe. Cet article explique comment implémenter une connexion SSH plus sécurisée sur un serveur CentOS et fournit des exemples de code correspondants.

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

Tout d'abord, générez une paire de clés sur votre ordinateur local. Ouvrez une fenêtre de terminal et entrez la commande suivante :

ssh-keygen -t rsa

Cette commande générera une paire de clés en utilisant l'algorithme RSA. Appuyez sur Entrée pour confirmer le chemin d'enregistrement de la clé et le nom du fichier. Il vous sera ensuite demandé de saisir le mot de passe de votre clé. Vous pouvez choisir de définir un mot de passe ou de le laisser vide et d'appuyer sur Entrée pour continuer à générer la clé.

Après une génération réussie, vous trouverez deux fichiers sous le chemin spécifié : id_rsa (clé privée) et id_rsa.pub (clé publique).

Étape 2 : Copiez la clé publique sur le serveur

Ensuite, copiez la clé publique sur le serveur CentOS. Copiez la clé publique sur le serveur à l'aide de la commande suivante :

ssh-copy-id user@server_ip_address

Remplacez "user" par votre nom d'utilisateur sur le serveur CentOS et "server_ip_address" par l'adresse IP du serveur. Il vous sera demandé de saisir votre mot de passe pour vous authentifier.

Après avoir copié avec succès la clé publique, vous obtiendrez le résultat suivant :

Number of key(s) added: 1

Étape 3 : Configurer le service SSH

Sur le serveur, ouvrez le fichier de configuration SSH pour le configurer. Ouvrez le fichier avec la commande suivante :

sudo vi /etc/ssh/sshd_config

Recherchez et assurez-vous que la ligne suivante n'est pas commentée et définissez la valeur comme suit :

PubkeyAuthentication yes
PasswordAuthentication no
PermitRootLogin no

La décommentation autorise l'authentification par clé publique, désactive l'authentification par mot de passe et interdit la connexion root directe. Après avoir apporté des modifications, enregistrez et fermez le fichier.

Ensuite, redémarrez le service SSH pour appliquer les modifications :

sudo systemctl restart sshd

Étape 4 : Testez la connexion SSH

Vous avez maintenant terminé la configuration. Vous pouvez tester si votre connexion SSH réussit à l'aide de la commande suivante :

ssh user@server_ip_address

Remplacez "user" par votre nom d'utilisateur et "server_ip_address" par l'adresse IP de votre serveur. Le système tentera de s'authentifier à l'aide de votre clé privée.

Si tout est correctement configuré, vous vous connecterez avec succès à votre serveur CentOS sans saisir de mot de passe.

Astuce bonus :

  • Pour renforcer davantage la sécurité de votre serveur, vous pouvez utiliser Passphrase pour protéger vos clés privées. De cette façon, même si la clé privée est volée, l’authentification ne peut pas être réussie.
  • Assurez-vous que les autorisations du fichier de clé privée sont définies sur 600, ce qui signifie que seul le propriétaire peut lire et écrire.
  • Utilisez différentes paires de clés pour authentifier plusieurs utilisateurs.
  • Remplacez régulièrement les paires de clés pour plus de sécurité.

Résumé :

L'utilisation de l'authentification par clé peut considérablement améliorer la sécurité du serveur et empêcher les connexions malveillantes et le craquage par force brute des mots de passe. Cet article décrit comment implémenter une connexion SSH plus sécurisée sur un serveur CentOS et fournit des exemples de code correspondants. En suivant ces étapes, vous pouvez facilement configurer l'authentification par clé pour votre serveur et assurer la sécurité de votre système.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn