Bonjour,
J'ai rédigé un tuto très utile pour logguer toutes les commandes tapées dans terminal ; très utile pour surveiller ce que font les users sur vos machines ;-)
http://journaldunadminlinux.fr/loggue-toutes-les-commandes-executees-dans-une-base-mysql/
Enjoy
# Aïe ! Mes yeux !
Posté par Obsidian . Évalué à 5.
Hello,
Merci beaucoup pour ton tutoriel, c'est sympa d'en faire profiter la communauté. Par contre, ceci : « toute les commandes tapez dans une terminal », franchement ça pique les yeux. Je le dis sans méchanceté ni retenue car je vois bien que c'est du laisser aller et pas de réelles difficultés en orthographe.
Sache que ce n'est pas un détail de chipoteur ni un point de détail secondaire une fois le contenu mis en ligne. C'est réellement dérangeant pour ton lecteur et ça peut le pousser à fuir l'essentiel.
À part cela, bon courage pour tes futurs hacks.
[^] # Re: Aïe ! Mes yeux !
Posté par vinced86 (site web personnel) . Évalué à 0.
Ouaoouh désolé pour la faute d'orthographe, j'étais légèrement fatigué lol.
Oui en effet cela ne marche qu'avec Bash
www.journaldunadminlinux.fr
# grep /home/*/.bash_history
Posté par NeoX . Évalué à 2.
et encore il faut etre sur que les utilisateurs utilisent tous bash…
# process accounting ?
Posté par Marc Quinton . Évalué à 3. Dernière modification le 08 juin 2013 à 10:11.
est-ce que tu ne pourrais pas regarder du coté du process-accounting ? l'avantage de cette solution, est que c'est directement intégré au système. J'ai juste du mal a voir quel est le degrés de finesse concernant les commandes passées. Cerise sur le gateau : si tu changes de shell, ca continue de marcher, ce qui n'est pas le cas, avec le bash customisé.
http://www.cyberciti.biz/tips/howto-log-user-activity-using-process-accounting.html
# Pas mal
Posté par vinced86 (site web personnel) . Évalué à 0.
Pas mal du tout je vais tester ca!
Est ce qu'il y a moyen de centraliser toutes les commandes dans une base de données comme avec ma solution???
Par exemple si tu possèdes un parc de 100 machines???
www.journaldunadminlinux.fr
[^] # Re: Pas mal
Posté par NeoX . Évalué à 2.
oui, un script cron, toutes les X heures ou une fois par jour,
qui lit l'historique et l'envoie dans ta base de donnée.
d'ailleurs c'est aussi ce que j'aurais scripté plutot que de modifier le shell depuis son code source (qui ne resiste pas au mise à jour ni au changement de shell)
[^] # Re: Pas mal
Posté par steph1978 . Évalué à 2.
très bon ça de l'injection sql dans le bash_history :)
# mince, un patch
Posté par steph1978 . Évalué à 2.
j'ai salivé à la lecture de ton post car j'ai un besoin : gérer de manière plus intelligente mon historique de commande en batch:
- ne garder qu'un seule fois une commande même si je l'ai tapé 15 fois de suite et encore 20 fois de suite pls tard (un "SortedSet" en somme)
- ne pas perdre l'historique en cas de crash (ubuntu est particulièrement instable en ce moment chez moi); en cas de perte de connexion ssh aussi.
du coup, je me demandais si il n'y avait pas un hook quelconques pour gérer cet aspect dans bash (genre EXPORT bash_history_function=…) mais il semble que non.
mais je ne voulais pas trop le faire en architecture client-serveur, ça me paraît over kill pour mon besoin. donc peut être m'inspirer de ton patch…
bravo pour le taf en tout cas.
[^] # Re: mince, un patch
Posté par vinced86 (site web personnel) . Évalué à 0.
Merci beaucoup Steph
www.journaldunadminlinux.fr
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.