Lorsque la gestion d’un serveur se fait à plusieurs avec le même compte (chose à na pas faire normalement), il peut être intéressent de connaître les commandes qui ont été exécutées sur le système en cas de problème. Un petit outil permet de le faire simplement : Snoopy .
Plusieurs méthodes pour retrouver toutes les commandes exécutées sur un serveur existent, la force de Snoopy est aussi d’afficher les commandes exécutes par les différents processus et tout l’historique est enregistré dans le fichier /var/log/auth.log
, exemple :
De ce fait, il est aussi possible grâce à snoopy de surveiller l’éxécution des script php ou cgi sur un serveur web ou tout autres actions comme les taches planifiées.
Installer Snoopy
Il est possible d’installer facilement Snoopy via le gestionnaire de paquet de la distribution car il est présent dans les dépôts mais il ne sera pas dans sa dernière version.
Exemple sur un serveur Debian 8 Jessie :
apt show snoppy | grep Vers
Version: 1.8.0-5
Sachant que le dernière version en date de la rédaction de cet article disponible sur le github est 2.4.6.
- Téléchargement su script d’installation de Snoopy:
wget -O snoopy-install.sh https://github.com/a2o/snoopy/raw/install/doc/install/bin/snoopy-install.sh
chmod +x snoopy-install.sh
- Version stable :
./snoopy-install.sh stable
./snoopy-install.sh git-master
Une fois que l’utilitaire Snoopy soit installé il faudra redémarrer les services qui sont en cours d’exécution pour assurer que l’enregistrement des actions fonctionnent.
Toutes les commandes seront enregistrées via syslog
et stockés par défaut dans le fichier /var/log/auth.log
.
j’utilise w, ou est la différence avec snoopy ? il est possible de renvoyer w dans les log tout simplement ?
La commande w est pour de l’instant T, avec snoopy tu as l’historique…