GNU/Linux >> Tutoriels Linux >  >> Linux

Comment surveiller l'activité des utilisateurs sous Linux

En tant qu'administrateur Linux, vous devez suivre les activités de tous les utilisateurs. Cela vous sera utile en cas de problème sur le serveur. Vous pouvez analyser et enquêter sur les activités des utilisateurs et essayer de trouver la cause première du problème. Il existe de nombreuses façons de surveiller les utilisateurs. Dans ce guide, nous allons parler des utilitaires de comptabilité GNU qui peut être utilisé pour surveiller l'activité de l'utilisateur sous Linux. Les utilitaires de comptabilité fournissent des informations utiles sur l'utilisation du système, telles que les connexions, les programmes exécutés et l'utilisation des ressources système. Ces utilitaires de comptabilité peuvent être installés à l'aide de psacct ou compte emballer. psacct ou acct sont identiques. Dans les systèmes basés sur RPM, il est disponible en tant que psacct, et dans les systèmes basés sur DEB, il est disponible en tant qu'acct.

Généralement, les détails de l'historique de la ligne de commande de l'utilisateur seront stockés dans .bash_history fichier dans leur répertoire $HOME. Certains utilisateurs peuvent essayer d'éditer, de modifier ou de supprimer l'historique. Cependant, les utilitaires de comptabilité pourront toujours récupérer les activités des utilisateurs même s'ils ont effacé leur historique de ligne de commande totalement. Parce que tous les fichiers de comptabilité de processus appartiennent à l'utilisateur root et que les utilisateurs normaux ne peuvent pas les modifier.

Installer psacct ou acct

Sur RHEL, CentOS, Fedora, Scientific Linux, exécutez la commande suivante en tant qu'utilisateur root pour installer psacct :

$ sudo yum install psacct

Activez et démarrez le service psacct à l'aide des commandes :

$ sudo systemctl enable psacct
$ sudo systemctl start psacct

Sur Debian, Ubuntu, Linux Mint, installez-le comme ci-dessous.

$ sudo apt-get install compte

La commande ci-dessus installera acct et démarrera son service automatiquement.

Vous pouvez vérifier s'il est démarré ou non à l'aide de la commande :

compte d'état $ sudo systemctl
Télécharger - Ebook gratuit :"Manuel de surveillance Nagios"

Surveiller l'activité des utilisateurs sous Linux

Le package psacct (Comptabilité de processus) contient les utilitaires utiles suivants pour surveiller les activités de l'utilisateur et du processus.

  • ac - Affiche des statistiques sur la durée de connexion des utilisateurs.
  • dernière communication - Affiche des informations sur les commandes précédemment exécutées.
  • acton - Active ou désactive la comptabilisation des processus.
  • compte de vidage - Transforme le fichier de sortie du format accton en un format lisible par l'homme.
  • vidage-utmp - Imprime les fichiers utmp dans un format lisible par l'homme.
  • sa - Résume les informations sur les commandes précédemment exécutées.

Voyons un par un avec des exemples.

ac

Le ca L'utilitaire affichera le rapport du temps de connexion en heures. Il peut vous dire combien de temps un utilisateur ou un groupe d'utilisateurs a été connecté au système.

$ ac

Cette commande affiche le temps de connexion total de tous les utilisateurs en heures.

total       30,62

Vous pouvez trier ce résultat par jour en utilisant -d drapeau comme indiqué ci-dessous.

$ ac -d

Exemple de résultat :

24 nov. total 0,8112 avril total 0,0120 juin total 9,2730 juin total 0,2311 mars total 5,3416 mars total 0,7021 mars total 9,5523 mars total 1,77Total aujourd'hui 3,03

De plus, vous pouvez afficher combien de temps chaque utilisateur a été connecté au système avec -p drapeau.

$ ac -p

Exemple de résultat :

sk 0.03root 30.73total 30.76

De plus, vous pouvez également afficher le temps de connexion total de l'utilisateur individuel.

$ ac sk

Exemple de résultat :

total 0,03

Pour afficher l'heure de connexion d'un utilisateur individuel par jour, exécutez :

$ ac -d racine

Exemple de résultat :

24 nov. total 0,8112 avril total 0,0120 juin total 9,2730 juin total 0,2311 mars total 5,3416 mars total 0,7021 mars total 9,5523 mars total 1,77Total aujourd'hui 3,41

Pour plus de détails, reportez-vous aux pages de manuel.

$ man ac

dernière communication

La dernière communication L'utilitaire affiche la liste des commandes précédemment exécutées. Les commandes exécutées les plus récentes seront répertoriées en premier.

$ dernière communication

Exemple de résultat :

sshd SF sshd __ 0,01 s Ven 24 mars 15:09unix_chkpwd S root __ 0,00 s Ven 24 mars 15:09unix_chkpwd S root __ 0,00 s Ven 24 mars 15:09systemd-cgroups S root __ 0,00 s Ven 24 mars 15:09systemd -cgroups Racine S __ 0,00 s Ven 24 mars 15:09sshd Racine S __ 0,06 s Ven 24 mars 15:09sshd SF sk __ 0,06 s Ven 24 mars 15:09bash sk pts/1 0,00 s Ven 24 mars 15:09clear sk pts/ 1 0,00 s ven. 24 mars 15:09vi sk pts/1 0,00 s. ven. 24 mars 15:09cat sk pts/1 0,00 s. 0,00 s Ven 24 mars 15:09grep sk pts/1 0,00 s Ven 24 mars 15:09bash F sk pts/1 0,00 s Ven 24 mars 15:09

La commande ci-dessus affiche toutes les commandes de l'utilisateur. Vous pouvez afficher les commandes précédemment exécutées par un utilisateur particulier en utilisant la commande :

$ lastcomm sk

Exemple de résultat :

sshd SF sk __ 0,06 s Ven 24 mars 15:09bash sk pts/1 0,00 s Ven 24 mars 15:09clear sk pts/1 0,00 s Ven 24 mars 15:09vi sk pts/1 0,00 s Ven 24 mars 15 :09cat sk pts/1 0,00 s Ven 24 mars 15:09bash F sk pts/1 0,00 s Ven 24 mars 15:09consoletype sk pts/1 0,00 s Ven 24 mars 15:09grep sk pts/1 0,00 s Ven 24 mars 15:09 

En outre, vous pouvez voir combien de fois une commande particulière a été exécutée.

$ lastcommvi

Exemple de résultat :

vi sk pts/1 0,00 s Ven 24 mars 15:09vi root pts/1 0,00 s Ven 24 mars 15:03

Comme vous le voyez dans la sortie ci-dessus, la commande vi a été exécutée deux fois par les utilisateurs root et sk.

Pour plus de détails, reportez-vous aux pages de manuel.

$ homme dernière communication

acton

Cet utilitaire vous permettra d'activer ou de désactiver la comptabilité.

Pour activer la comptabilisation des processus, exécutez :

Accton $ sur

Pour le désactiver, exécutez :

Réduction d'une réduction de $

Pour plus de détails, reportez-vous aux pages de manuel.

$ man accton

dump-acct et dump-utmp

Le compte de vidage l'utilitaire affiche le fichier de sortie du format accton dans un format lisible par l'homme.

$ dump-acct /var/account/pacct

dump-utmp affiche les fichiers utmp dans un format lisible par l'homme.

$ dump-utmp /var/run/utmp

Pour plus de détails, reportez-vous aux pages de manuel.

$ man dump-compte
$ man dump-utmp

sa

L'utilitaire sa résumera les informations sur les commandes précédemment exécutées.

$ sa

Exemple de résultat :

 318 951.07RE 0,01CP 0AVIO 15299K 4 33.04RE 0,01CP 0AVIO 26352K SSHD 7 2.05RE 0,00CP 0AVIO 25184K SSHD * 2 0,01re 0,00cp 0avio 89856K DNF 35 0,00C.00CPP 0AVIO 29767k Man * 29 0.00re 0,00C. 7377k bash * 12 0,00re 0,00cp 0AVIO 6259K UNIX_CHKPWD 12 0.00RE 0,00CP 0AVIO 2674K Systemd-Cgroups 10 0.00re 0,00cp 0AVIO 2260K Grep 9 166.31re 0.00cp 0aVio 25375k *** Autre * 9 110.33re 0.00CP 0AVIO 0K KOWERE 0:2* 9 110.33re 0.00cp 0avio 0k kworker/0:0* 9 0.00re 0.00cp 0avio 3830k id 8 0.00re 0.00cp 0avio 1080k ac 8 0.00re 0.00cp 0avio 26976k enregistreur 6 0.00recp 6 0.00re nom de base 0 moins 

Pour imprimer le nombre de processus et le nombre de minutes CPU par utilisateur, exécutez simplement :

$ sa -m

Exemple de résultat :

 337 961.10re 0,01cp 0AVIO 15593KROOT 286 857.82RE 0.01CP 0AVIO 16672KSK 45 3,88RE 0,00CP 0AVIO 7992KSSHD 5 0.34RE 0,00CP 0AVIO 20966KPOSTFIX 1 

Pour plus de détails, reportez-vous aux pages de manuel.

$ man sa

Lecture suggérée :

  • Comment limiter l'accès des utilisateurs au système Linux

Et c'est tout. Chaque administrateur Linux doit connaître les utilitaires de comptabilité GNU pour garder un œil sur tous les utilisateurs. Ces utilitaires seront utiles lors du dépannage.


Linux
  1. Comment changer un nom d'utilisateur sous Linux

  2. Comment ajouter un utilisateur à un groupe sous Linux

  3. Comment créer un utilisateur Sudo dans Rocky Linux 8

  4. 5 exemples de commandes utiles pour surveiller l'activité des utilisateurs sous Linux

  5. Comment trouver l'utilisation de la mémoire utilisateur sous Linux

Comment ajouter un utilisateur à un groupe sous Linux

Comment changer ou définir un mot de passe utilisateur sous Linux

Comment changer d'utilisateur sous Linux

Comment connaître les groupes d'un utilisateur Linux

Comment ajouter un utilisateur à un groupe sous Linux

Comment ajouter un utilisateur à un groupe Linux