L'une des tâches les plus critiques que vous avez en tant qu'administrateur système est de surveiller votre système pour toute activité suspecte qui pourrait indiquer un compromis de sécurité et d'agir en conséquence. Vous devez évaluer l'activité de connexion pour détecter les signes d'une faille de sécurité, tels que plusieurs échecs de connexion.
REMARQUE :L'examen de fichiers tels que /var/log/messages peut également vous fournir des informations sur l'activité de connexion.Pour surveiller l'activité de connexion, vous pouvez utiliser les commandes suivantes :
qui
La commande who Affiche qui est actuellement connecté au système et des informations telles que l'heure de la dernière connexion. Vous pouvez utiliser des options telles que
-H (afficher les en-têtes de colonnes)
-r (niveau d'exécution actuel)
-a (affiche les informations fournies par la plupart des options).
Par exemple, la saisie de who -H renvoie des informations similaires à celles-ci :
# who -H NAME LINE TIME COMMENT user pts/0 2017-12-14 09:58
De même, la commande "who -a" affichera la sortie comme indiqué ci-dessous.
# who -a system boot 2017-12-14 09:51 LOGIN ttyS0 2017-12-14 09:52 1103 id=tyS0 LOGIN tty1 2017-12-14 09:52 1102 id=tty1 run-level 3 2017-12-14 09:53 user + pts/0 2017-12-14 09:58 . 1164
w
Le 'w ‘ commande Affiche des informations sur les utilisateurs actuellement sur la machine et leurs processus. La première ligne comprend des informations sur l'heure actuelle, la durée d'exécution du système, le nombre d'utilisateurs actuellement connectés et les moyennes de charge du système pour les 1, 5 et 15 dernières minutes.
Sous la première ligne se trouve une entrée pour chaque utilisateur qui affiche le nom de connexion, le nom TTY, l'hôte distant, l'heure de connexion, le temps d'inactivité, JCPU, PCPU et la ligne de commande du processus actuel de l'utilisateur. Vous trouverez ci-dessous un exemple de sortie de la commande w.
# w 11:05:37 up 1:14, 2 users, load average: 0.00, 0.01, 0.05 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT user pts/0 09:58 1:04m 0.38s 1.74s login -- user user pts/1 11:05 1.00s 0.03s 0.15s login -- user
Le temps JCPU est le temps utilisé par tous les processus attachés au tty. Il n'inclut pas les travaux d'arrière-plan passés, mais il inclut les travaux d'arrière-plan en cours d'exécution. Le temps PCPU est le temps utilisé par le processus en cours, qui est nommé dans
le champ Quoi. Vous pouvez utiliser des options telles que -h (ne pas afficher l'en-tête), -s (ne pas afficher l'heure de connexion, JCPU et PCPU) et -V (afficher les informations de version).
doigt
La commande finger affiche des informations sur les utilisateurs système locaux et distants. Par défaut, les informations suivantes sont affichées sur chaque utilisateur actuellement connecté à l'hôte local :
1. Nom de connexion de l'utilisateur
2. Nom complet de l'utilisateur
3. Nom du terminal associé
4. Temps d'inactivité
5. Heure de connexion (et d'où)
Vous pouvez utiliser des options telles que -l (format long) et -s (format court) . Par exemple, la saisie de "doigt -s" renvoie des informations similaires à celles-ci :
# finger -s Login Name Tty Idle Login Time Office Office Phone Host user pts/0 1:18 Dec 14 09:58 user pts/1 Dec 14 11:05
# finger -l Login: user Name: Directory: /home/user Shell: /bin/bash On since Thu Dec 14 09:58 (EST) on pts/0 1 hour 18 minutes idle On since Thu Dec 14 11:05 (EST) on pts/1 1 second idle No mail. No Plan.
dernier
La dernière commande affiche une liste des utilisateurs qui se sont connectés et déconnectés depuis le /var/log/wtmp fichier a été créé. La dernière commande recherche dans le fichier /var/log/wtmp (ou le fichier désigné par le -f option) et affiche une liste de tous les utilisateurs qui se sont connectés (et déconnectés) depuis la création du fichier. Vous pouvez spécifier des noms d'utilisateurs et des TTY pour afficher uniquement les informations de ces entrées.
Vous pouvez utiliser des options telles que -n (où n est le nombre de lignes à afficher), -a (afficher le nom de l'hôte dans la dernière colonne) et -x (afficher les entrées d'arrêt du système et les changements de niveau d'exécution).
Par exemple, la saisie de last -ax renvoie des informations similaires à celles-ci :
# last -ax user pts/0 Sun Dec 17 00:05 still logged in runlevel (to lvl 3) Sun Dec 17 00:04 - 00:09 (00:05) 3.10.0-693.11.1.el7.x86_64 reboot system boot Sun Dec 17 00:03 - 00:09 (00:05) 3.10.0-693.11.1.el7.x86_64 shutdown system down Thu Dec 14 13:05 - 00:03 (2+10:58) 3.10.0-693.11.1.el7.x86_64 user pts/1 Thu Dec 14 11:05 - down (02:00) user pts/0 Thu Dec 14 09:58 - down (03:06)
dernier journal
La commande lastlog formate et imprime le contenu du dernier fichier journal de connexion (/var/log/lastlog). Le nom de connexion, le port et l'heure de la dernière connexion sont affichés.
La saisie de la commande sans options affiche les entrées triées par ID numérique. Vous pouvez utiliser des options telles que -u login_name (afficher les informations pour l'utilisateur désigné uniquement) et -h (affiche un message d'aide d'une ligne). Si un utilisateur ne s'est jamais connecté, le message **Jamais connecté** s'affiche à la place du port et de l'heure. Par exemple, la saisie de lastlog renvoie des informations similaires à celles-ci :
# lastlog Username Port From Latest root pts/0 Sun Dec 17 00:05:43 -0500 2017 bin **Never logged in** daemon **Never logged in** adm **Never logged in** .... chrony **Never logged in** ec2-user **Never logged in** user pts/0 Sun Dec 17 00:05:35 -0500 2017