• Hallo Gast, du kaufst gerne günstig ein und erfährst oft vor deinen Freunden von interessanten Angeboten? Dann kannst du dein Talent als Schnäppchenjäger jetzt zu Geld machen und anderen PCGH-Lesern beim Sparen helfen! Schau einfach mal rein - beim Test der Community Deals!

CentOS - Wer hat welche Befehle ausgeführt?

Imperat0r

Software-Overclocker(in)
CentOS - Wer hat welche Befehle ausgeführt?

Hallo zusammen,

auf einem Linux Server (Distribution: CentOS), den ich administriere gibt es mehrere
angelegte Benutzer. Die Benutzer verbinden sich via SSH auf den Server und haben Zugriff auf diverse
Dienste wie z.B. SVN.

Gibt es die Möglichkeit zu sehen welcher Benutzer welche Befehle ausgeführt hat?


Danke.
 

Lexx

Volt-Modder(in)
AW: CentOS - Wer hat welche Befehle ausgeführt?

Aber dir ist klar, dass du damit in die "Privatsphäre" der Benutzer eindringst?

Wenns offline sein kann, kannst du dir auch die Bashhistory ansehen, liegt im User-Dir.

Anderenfalls ttysnoop
 

Jimini

PCGH-Community-Veteran(in)
AW: CentOS - Wer hat welche Befehle ausgeführt?

Eventuell eignet sich auch der auditd für sowas. Natürlich sollte man die User aber darauf hinweisen, dass ihre Befehle geloggt werden.
Wieso genau möchtest du das denn überwachen? Vielleicht kann man ja noch an einem ganz anderen Punkt ansetzen.

MfG Jimini
 
TE
Imperat0r

Imperat0r

Software-Overclocker(in)
AW: CentOS - Wer hat welche Befehle ausgeführt?

Unter anderem läuft dort ein Apache. Jemand hat den Prozess gekillt und nicht wieder gestartet.
Die Applikation war danach logischerweise nicht mehr erreichbar. Da sich keiner freiwillig meldet
würde ich gerne wissen wer den Prozess gekillt hat.
 

Zeiss

BIOS-Overclocker(in)
AW: CentOS - Wer hat welche Befehle ausgeführt?

Setzt aber voraus, dass man sich als ein "named user" anmeldet und dann über "sudo /etc/init.d/apache2 stop" absetzt. Wenn man sich als Root angemeldet, siehst Du gar nichts, sprich nur, dass der Befehl ausgeführt wurde, aber nicht von wem.
 

Jimini

PCGH-Community-Veteran(in)
AW: CentOS - Wer hat welche Befehle ausgeführt?

Unter anderem läuft dort ein Apache. Jemand hat den Prozess gekillt und nicht wieder gestartet.
Die Applikation war danach logischerweise nicht mehr erreichbar. Da sich keiner freiwillig meldet
würde ich gerne wissen wer den Prozess gekillt hat.
Du müsstest über die Logs rekonstruieren können, wann der Prozess gekillt wurde und wann sich zuvor jemand eingeloggt hat - sofern nicht mehrere User gleichzeitig aktiv waren.
Sowas ist natürlich sehr sehr ärgerlich, insbesondere weil ich davon ausgehe, dass du root-Rechte nur an Leute vergibst, denen du vertraust.
Ein root-Zugang via SSH ist hoffentlich nicht möglich?

MfG Jimini
 
TE
Imperat0r

Imperat0r

Software-Overclocker(in)
AW: CentOS - Wer hat welche Befehle ausgeführt?

Du müsstest über die Logs rekonstruieren können, wann der Prozess gekillt wurde und wann sich zuvor jemand eingeloggt hat - sofern nicht mehrere User gleichzeitig aktiv waren.
Sowas ist natürlich sehr sehr ärgerlich, insbesondere weil ich davon ausgehe, dass du root-Rechte nur an Leute vergibst, denen du vertraust.
Ein root-Zugang via SSH ist hoffentlich nicht möglich?

Es ist gut möglich, dass zu der Zeit mehrere User eingeloggt waren.
Die User haben alle ihre eigene Benutzernamen mit entsprechenden Rechten.
Den wirklichen root Zugang hat nur der Chef und ich.

Ich dachte vielleicht, dass man als root in irgendwelchen log Files sieht welcher Benutzer wann welchen Befehl ausgeführt hat.
 

Jimini

PCGH-Community-Veteran(in)
AW: CentOS - Wer hat welche Befehle ausgeführt?

Es ist gut möglich, dass zu der Zeit mehrere User eingeloggt waren.
Ich würde es trotzdem checken, das ist allemal besser als auf einen Verdacht hin die ~/.bash_history der User zu durchstöbern. Wenn es nicht anders geht, dann würde ich zumindest mit grep arbeiten:
grep apache /home/*/.bash_history
So musst du die History nicht durchwühlen, was erstens Zeit spart und zweitens den Eingriff so gering wie möglich hält.

Was mich wundert ist, dass ein User Apache gekillt haben soll. Normalerweise ist das nur mit root-Rechten möglich. Kannst du definitiv ausschließen, dass Apache abgestürzt ist? Was hat denn Apaches Errorlog zu dem Zeitpunkt geloggt?
Ich dachte vielleicht, dass man als root in irgendwelchen log Files sieht welcher Benutzer wann welchen Befehl ausgeführt hat.
Es ist prinzipiell möglich, sowas zu loggen - bzw. gehe ich mal davon aus, dass es Software dafür gibt.
Ich kenne es von SELinux-Systemen, dass der auditd alles festhält, was nicht erlaubt ist, und darunter fällt definitiv das Beenden eines Prozesses, der nicht mir selber gehört.

MfG Jimini
 
Oben Unten