Maison  >  Article  >  Opération et maintenance  >  Renforcement de la sécurité SSH : protection des environnements Linux SysOps contre les attaques

Renforcement de la sécurité SSH : protection des environnements Linux SysOps contre les attaques

PHPz
PHPzoriginal
2023-09-26 10:09:031017parcourir

SSH安全加固:保护Linux SysOps环境免受攻击

Renforcement de la sécurité SSH : protéger les environnements Linux SysOps contre les attaques

Introduction :
Secure Shell (SSH) est un protocole largement utilisé pour la gestion à distance, le transfert de fichiers et la transmission sécurisée. Cependant, comme SSH est souvent la cible de pirates informatiques, il est très important de renforcer votre serveur SSH en toute sécurité. Cet article présentera quelques méthodes pratiques pour aider le personnel SysOps (exploitation et maintenance du système) à renforcer et à protéger son environnement Linux contre les attaques SSH.

1. Désactivez la connexion SSH ROOT
La connexion SSH ROOT est l'une des cibles les plus populaires pour les pirates. Les pirates peuvent utiliser le cracking par force brute ou des attaques contre des vulnérabilités SSH connues pour obtenir des privilèges d'administrateur via la connexion SSH ROOT. Pour éviter que cela ne se produise, la désactivation de la connexion SSH ROOT est une étape très importante.

Dans le fichier de configuration SSH (généralement /etc/ssh/sshd_config), recherchez l'option "PermitRootLogin", changez sa valeur en "no", puis redémarrez le service SSH. La configuration modifiée est la suivante :

PermitRootLogin no

2. Utiliser l'authentification par clé SSH
L'authentification par clé SSH utilise un algorithme de cryptage asymétrique, qui est plus sécurisé que l'authentification traditionnelle par mot de passe. Lors de l'utilisation de l'authentification par clé SSH, l'utilisateur doit générer une paire de clés, la clé publique est stockée sur le serveur et la clé privée est stockée sur le client. Lorsqu'un utilisateur se connecte, le serveur confirme son identité en vérifiant l'exactitude de la clé publique.

Comment générer des clés SSH :

  1. Utilisez la commande ssh-keygen sur le client pour générer une paire de clés.
  2. Copiez la clé publique générée dans le fichier ~/.ssh/authorized_keys du serveur.
  3. Assurez-vous que les autorisations du fichier de clé privée sont définies sur 600 (c'est-à-dire que seul le propriétaire peut lire et écrire).

Après avoir terminé les étapes ci-dessus, vous pouvez désactiver la connexion par mot de passe et autoriser uniquement la connexion par clé. Dans le fichier de configuration SSH, modifiez l'option "PasswordAuthentication" sur "no", puis redémarrez le service SSH.

PasswordAuthentication no

3. Changez le port SSH
Par défaut, le serveur SSH écoute sur le port 22. Étant donné que ce port est public, il est vulnérable à la force brute ou à l'analyse de port. Pour améliorer la sécurité, nous pouvons changer le port d'écoute du serveur SSH.

Dans le fichier de configuration SSH, recherchez l'option "Port" et définissez-la sur un numéro de port non conventionnel, tel que 2222. N'oubliez pas de redémarrer le service SSH.

Port 2222

4. Utilisez un pare-feu pour restreindre l'accès SSH
La configuration d'un pare-feu est l'une des étapes importantes pour protéger le serveur. En utilisant un pare-feu, nous pouvons restreindre l'accès SSH à des adresses IP ou à des plages d'adresses IP spécifiques uniquement.

À l'aide du pare-feu iptables, vous pouvez exécuter la commande suivante pour restreindre l'accès SSH :

sudo iptables -A INPUT -p tcp --dport 2222 -s Adresse IP autorisée à accéder -j ACCEPT
sudo iptables -A INPUT -p tcp -- dport 2222 -j DROP

La commande ci-dessus permet à l'adresse IP spécifiée d'accéder à SSH et bloque l'accès à partir de toutes les autres adresses IP. N'oubliez pas de sauvegarder et d'appliquer les règles de pare-feu.

5. Utilisez Fail2Ban pour bloquer automatiquement les adresses IP malveillantes
Fail2Ban est un outil qui peut surveiller automatiquement les fichiers journaux et bloquer les comportements malveillants. En surveillant les connexions SSH ayant échoué, Fail2Ban peut bloquer automatiquement les adresses IP des attaquants.

Après avoir installé Fail2Ban, ouvrez son fichier de configuration (généralement /etc/fail2ban/jail.conf) et configurez ce qui suit :

[sshd]
enabled = true
port = 2222
filter = sshd
maxretry = 3
findtime = 600
bantime = 3600

La configuration ci-dessus signifie que si une adresse IP tente de se connecter SSH plus de 3 fois en 10 minutes, elle sera automatiquement bloquée pendant 1 heure. Une fois la configuration terminée, redémarrez le service Fail2Ban.

Résumé :
En désactivant la connexion SSH ROOT, en utilisant l'authentification par clé SSH, en modifiant les ports SSH, en utilisant des pare-feu pour restreindre l'accès SSH et en utilisant Fail2Ban, nous pouvons renforcer et protéger efficacement l'environnement Linux SysOps contre les attaques SSH. Voici quelques méthodes pratiques que le personnel SysOps peut utiliser pour sélectionner les mesures de sécurité appropriées et les mettre en œuvre en fonction de la situation réelle. Dans le même temps, la mise à jour et la surveillance régulières des logiciels et des correctifs sur le serveur sont également essentielles pour protéger le serveur contre les attaques. Ce n'est qu'en restant vigilants et en prenant les mesures de sécurité appropriées que nous pourrons assurer la sécurité de notre environnement Linux.

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