Toon posts:

[RHEL] Commandline commands loggen, welk pakket ?

Pagina: 1
Acties:
  • 111 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Ik wil graag op een machine alle exec commands loggen van de machine, dit omdat ik een aantal bash scripts draai welke werken als:

./bashscript <variabele> <variabele2>

Ik heb SnoopyLogger gevonden, maar dit werkt naar mijn inziens niet. Er is tevens een probleem dat je dit krijgt wanneer de module in /etc/ld.so.preload staat:

code:
1
2
# yum update
Segmentation fault


Is er een beter alternatief, het gaat me namelijk echter om wat er achter het command staat.

Verwijderd

Klinkt niet echt goed die module...

Kan je niet beter gewoon je scriptje zelf laten loggen? Als je de scriptjes trouwens zelf vanaf de commandline uitvoert, kan je met het commando "history" je gegeven commando's bekijken.

[ Voor 41% gewijzigd door Verwijderd op 28-08-2007 16:18 ]


Verwijderd

De history file logt de commando's pas op het moment dat je uitlogt. Tevens is dit triviaal om te omzeilen. Afgezien van (zelf gebouwde) kernel patches is het enige wat imho een beetje werkt bash met de perassi patch, welke alle commando's logged naar een remote syslog server. Ook dit is vrij eenvoudig te omzeilen, maar het detecteren dat iemand dit omzeilt is makkelijker op te pakken.

Verwijderd

Topicstarter
Verwijderd schreef op dinsdag 28 augustus 2007 @ 16:15:
Klinkt niet echt goed die module...

Kan je niet beter gewoon je scriptje zelf laten loggen? Als je de scriptjes trouwens zelf vanaf de commandline uitvoert, kan je met het commando "history" je gegeven commando's bekijken.
Het probleem is dat het een machine is waar root via SSH op in logt vanaf een andere machine en dan een bashscript runt.

Dit kan ik niet afvangen, of met SCREEN misschien, dit gebruik ik al wel, moet er alleen nog verder in duiken, die manual is ZO groot.

Het probleem van de history, mede dat die bashes niet gelogd worden is dat je niet alle exec commands kunt zien, dus die <var> <var> achter je bash script.

edit:
/me hides voor zijn Linux commands-taalgebruik ;)


Ik heb wat alternatieven gevonden, nu wil ik alleen nog zien te maken dat een user die via ssh inlogt direct in een file gelogd wordt.

- ttysnoop
- strace
- script
- ttyrec

[ Voor 10% gewijzigd door Verwijderd op 29-08-2007 03:09 ]


Verwijderd

Verwijderd schreef op dinsdag 28 augustus 2007 @ 16:48:
[...]


Het probleem is dat het een machine is waar root via SSH op in logt vanaf een andere machine en dan een bashscript runt.

Dit kan ik niet afvangen, of met SCREEN misschien, dit gebruik ik al wel, moet er alleen nog verder in duiken, die manual is ZO groot.

Het probleem van de history, mede dat die bashes niet gelogd worden is dat je niet alle exec commands kunt zien, dus die <var> <var> achter je bash script.

edit:
/me hides voor zijn Linux commands-taalgebruik ;)


Ik heb wat alternatieven gevonden, nu wil ik alleen nog zien te maken dat een user die via ssh inlogt direct in een file gelogd wordt.

- ttysnoop
- strace
- script
- ttyrec
Kan je die scriptjes niet aanpassen dan? Bijvoorbeeld:

#!/bin/bash

/usr/bin/logger "$naambashscript <$var1> <$var2> started"

Dat komt er een regel in je syslog te staan met welke waardes je scriptje is gestart als je het daar wil hebben. Of je laat je scriptje zelf een logfile aanmaken, kan ook...

Tevens is het me niet helemaal duidelijk waarom je dit wil doen? Security of beheer of iets anders?

[ Voor 4% gewijzigd door Verwijderd op 29-08-2007 14:35 ]


Verwijderd

Topicstarter
Ik zou standaard tty's kunnen monitoren welke nog niet actief zijn, dit was ook mijn idee.

Ik wil kijken wat een script doet op de commandline wanneer deze geruns wordt vanaf een ander systeem dat inlogt.

Ik kan het niet debuggen, maar wil gewoon weten wel commands het uitvoert... hoewel ik hier al bijna achter ben wil ik het nog steeds proberen te visualiseren.
Pagina: 1