Que vous soyez un administrateur Linux avec des serveurs et de multiples utilisateurs sous votre surveillance ou un utilisateur Linux ordinaire, il est toujours bon d’être proactif dans la sécurisation de votre système.
L’une des façons de sécuriser activement votre système est de surveiller les connexions des utilisateurs, en particulier les utilisateurs actuellement connectés et les échecs de connexion ou les tentatives de connexion.
Pourquoi surveiller les connexions sous Linux ?
La surveillance des connexions sur votre système Linux est une activité importante pour plusieurs raisons :
- Conformité : La plupart des normes de sécurité informatique, des réglementations et des gouvernements exigent que vous surveilliez les journaux pour être en conformité avec les meilleures pratiques de l’industrie.
- Sécurité : La surveillance des journaux vous aidera à améliorer la sécurité de vos systèmes car vous aurez une visibilité sur les utilisateurs qui accèdent ou tentent d’accéder à votre système. Cela vous permet de prendre des mesures préventives si vous remarquez des activités de connexion indésirables.
- Dépannage : Découvrez pourquoi un utilisateur peut avoir des difficultés à se connecter à votre système.
- Piste d’audit : Les journaux de connexion sont une bonne source d’information pour les audits de sécurité informatique et les activités connexes.
Il existe quatre principaux types de connexions que vous devez surveiller sur votre système : les connexions réussies, les connexions échouées, les connexions SSH et les connexions FTP. Voyons comment vous pouvez surveiller chacun de ces types de connexion sous Linux.
1. Utiliser la dernière commande
dernier est un puissant utilitaire de ligne de commande permettant de surveiller les connexions précédentes sur votre système, y compris les connexions réussies et échouées. Il affiche également les arrêts, les redémarrages et les déconnexions du système.
Ouvrez simplement votre terminal et exécutez la commande suivante pour afficher toutes les informations de connexion :
last
Vous pouvez utiliser grep pour filtrer des connexions spécifiques. Par exemple, pour obtenir la liste des utilisateurs actuellement connectés, vous pouvez exécuter la commande suivante :
last | grep "logged in"
Vous pouvez également utiliser la commande w pour afficher les utilisateurs connectés et ce qu’ils sont en train de faire ; pour ce faire, il suffit d’entrer w dans le terminal.
2. Utilisation de la commande lastlog
La commande dernier journal affiche les détails de connexion de tous les utilisateurs, y compris les utilisateurs standard, les utilisateurs système et les utilisateurs de comptes de service.
sudo lastlog
La sortie contient tous les utilisateurs, affichés dans un format soigné qui montre leur nom d’utilisateur, le port qu’ils utilisent, l’adresse IP d’origine et l’heure à laquelle ils se sont connectés.
Consultez les pages de manuel lastlog à l’aide de la commande man lastlog pour en savoir plus sur son utilisation et les options de commande.
3. Surveiller les connexions SSH sous Linux
L’un des moyens les plus courants d’accéder à distance à des serveurs Linux est le protocole SSH. Si votre PC ou votre serveur est connecté à Internet, vous devez sécuriser vos connexions SSH (en désactivant les connexions SSH basées sur un mot de passe, par exemple).
La surveillance des connexions SSH vous donnera une bonne vue d’ensemble pour savoir si quelqu’un essaie d’entrer par force brute dans votre système.
Par défaut, la journalisation SSH est désactivée sur certains systèmes. Vous pouvez l’activer en modifiant le fichier /etc/ssh/sshd_config . Utilisez l’un de vos éditeurs de texte préférés et décompressez la ligne Niveau du journal INFO et modifiez-le également en LogLevel VERBOSE. Il devrait ressembler à ce qui suit après les modifications :
Vous devrez redémarrer le service SSH après avoir effectué cette modification :
sudo systemctl restart ssh
Toutes les connexions ou activités SSH seront désormais enregistrées dans le fichier /var/log/auth.log fichier. Ce fichier contient une foule d’informations permettant de surveiller les connexions et les tentatives de connexion sur votre système Linux.
Vous pouvez utiliser la commande chat ou tout autre outil de sortie pour lire le contenu du fichier auth.log fichier :
cat /var/log/auth.log
Utilisez grep pour filtrer les connexions SSH spécifiques. Par exemple, pour répertorier les échecs de connexion, vous pouvez exécuter la commande suivante :
sudo grep "Failed" /var/log/auth.log
Outre l’affichage des échecs de connexion, il est également judicieux d’examiner les utilisateurs connectés et de détecter ceux qui sont suspects, par exemple d’anciens employés.
4. Surveillance des connexions FTP sous Linux
FTP est un protocole largement utilisé pour transférer des fichiers entre un client et un serveur. Vous devez être authentifié sur le serveur pour pouvoir transférer des fichiers.
Étant donné que le service implique le transfert de fichiers, toute faille de sécurité peut avoir de graves conséquences sur votre vie privée. Heureusement, vous pouvez facilement surveiller les connexions FTP et toutes les autres activités connexes en filtrant pour « FTP » dans la section /var/log/syslog à l’aide de la commande suivante :
grep ftp /var/log/syslog
Surveiller les connexions sous Linux pour une meilleure sécurité
Tout administrateur système devrait être proactif dans la sécurisation de son système. La surveillance régulière des connexions est le meilleur moyen de détecter toute activité suspecte.
Vous pouvez également utiliser des outils tels que fail2ban pour prendre automatiquement des mesures préventives en votre nom.
