Aujourd'hui, nous trouvons différentes façons de nous connecter à nos serveurs en toute sécurité pour effectuer des tâches de maintenance et d'assistance ou pour vérifier l'état de ceux-ci. Parce que nous ne pouvons pas toujours être directement à l'emplacement physique de ce moyen le plus pratique et le plus courant d'accéder au serveur, cela est possible à distance via le protocole SSH.
SSH (Secure SHell) a été développé comme un protocole qui permet d'établir des connexions entre deux systèmes sur la base de l'architecture client/serveur, facilitant qu'en tant qu'administrateurs ou utilisateurs, nous puissions nous connecter à distance au serveur ou à l'ordinateur, l'un des avantages les plus notables de SSH est qu'il est responsable du cryptage de la session de connexion pour augmenter la sécurité en empêchant les attaquants d'accéder aux mots de passe non cryptés.
Désormais, chaque connexion ou tentative d'accès au serveur via SSH est enregistrée et stockée dans un fichier journal par le démon rsyslog sous Linux afin qu'il soit possible d'y accéder et de valider en détail qui, quand et le statut du démarrage de la session permettant une tâche d'audit et de contrôle beaucoup plus complète.
Solvetic vous expliquera dans ce tutoriel comment visualiser ce fichier et déterminer qui a essayé ou s'est connecté à l'ordinateur.
1. Installer SSH sur Linux
Pour cet exemple, nous avons utilisé Ubuntu 19 et CentOS 8, rappelez-vous que lors de l'accès via SSH, nous pouvons travailler de manière complète sur l'ordinateur :
AGRANDIR
Installer SSH sur CentOS 8Si vous souhaitez installer SSH dans CentOS 8, vous devez exécuter les opérations suivantes :
miam -y installer openssh-server openssh-clients
AGRANDIR
Installer SSH sur UbuntuSi vous voulez le faire dans Ubuntu 19, vous devez exécuter ce qui suit :
sudo apt installer openssh-server
2. Utilisez la commande grep pour afficher les échecs de connexion sous Linux
Étape 1
Le moyen le plus simple de déterminer et d'afficher les tentatives de connexion consiste à exécuter la commande suivante :
grep "Échec du mot de passe" /var/log/auth.log
Étape 2
Nous pouvons voir des détails tels que:
- Utilisateur essayant de se connecter
- adresse IP
- Port utilisé pour la tentative de connexion
Étape 3
On retrouve ce même résultat avec la commande cat :
cat /var/log/auth.log | grep "Échec du mot de passe"
Étape 4
Si vous souhaitez obtenir des informations supplémentaires sur les échecs de connexion SSH sous Linux, nous devons exécuter ce qui suit. Comme on le voit, les détails sont beaucoup plus complets.
egrep "Échec | Échec" /var/log/auth.log
Afficher les journaux dans RHEL ou CentOS 8Dans le cas de RHEL ou CentOS 8, tous les logs sont hébergés dans le fichier /var/log/secure, pour leur visualisation nous exécuterons ce qui suit :
egrep "Échec | Échec" / var / log / secure
AGRANDIR
Nous voyons que les journaux sont conservés avec tous les détails, y compris les noms de session enregistrés (corrects ou non). Une autre option pour afficher les connexions SSH ayant échoué dans CentOS consiste à utiliser l'une des lignes suivantes :
grep "Échec" / var / log / secure grep " échec d'authentification " / var / log / secure
AGRANDIR
Étape 5
Pour afficher la liste des adresses IP qui ont tenté d'accéder, mais sans succès, nous devons utiliser la commande suivante :
grep "Échec du mot de passe" /var/log/auth.log | awk '{print $ 11}' | uniq -c | trier -nrÉtape 6
Dans les distributions Linux les plus récentes (telles que Ubuntu 19), il est possible d'accéder au fichier journal d'exécution que Systemd gère avec la commande journalctl, si nous voulons voir les journaux de connexion SSH échoués, nous utiliserons la commande grep pour filtrer les des résultats comme ceci :
journalctl _SYSTEMD_UNIT = ssh.service | egrep "Échec | Échec" (Ubuntu) journalctl _SYSTEMD_UNIT = sshd.service | egrep "Échec | Échec" (RHEL, CentOS)
Sur CentOSDans CentOS, nous pouvons également utiliser les éléments suivants :
journalctl _SYSTEMD_UNIT = sshd.service | grep "échec" journalctl _SYSTEMD_UNIT = sshd.service | grep "Échec"
Nous pouvons voir comment afficher chaque tentative de connexion SSH échouée et sur cette base, prendre les mesures de sécurité appropriées pour préserver la disponibilité des services.