Über mich

Text? Mein Name ist Heiko, ich bin 33 Jahre alt und lebe im schönen Stralsund. Somit genieße ich mein Dasein als Informatiker in Meeresnähe. :)
Näheres findest du hier.

Neueste Kommentare

Beliebteste Artikel

Blogroll

Kategorien

Tag Cloud

Archiv

12.07.2011

Big Brother is watching you

Betreibt man einen eigenen Server und ist zu Debugging- und Entwicklungszwecken gezwungen Dritten Zugang zum System zu gewähren, bietet das umfangreiche Rechtesystem unter Linux ein gutes Arsenal um die Handlungsfreiheit der Besucher auf ein Minimum zu beschränken.
Ist es über dies jedoch nötig ihnen gewisse sudo Rechte zuzuschreiben und man selbst dabei beispielsweise über SLA’s an den reibungslosen Betrieb gebunden, wird einem vielleicht etwas mulmig. Um im Zweifelsfall nicht mit leeren Händen dazustehen, kann man den audit daemon dazu verwenden, alle Aktionen des entsprechenden Nutzers mitloggen zu lassen.

Im Internet wird man schnell fündig, wenn man Änderungen an Dateien mitschneiden möchte. Loginprozesse protokolliert der auditd sogar schon von Haus aus. Für den von uns gewünschten Task ist tatsächlich am Ende nur ein einziger Befehl notwendig. Trotzdem kann man Stunden damit verbringen einen entsprechenden Hinweis zu finden, deshalb diese kleine Hilfestellung. :)

auditctl -a exit,always -S execve -F auid=Benutzername

Mit diesem Befehl haben wir unser Ziel bereits erreicht.
“exit, always” beschreibt hier das Verhalten für die Eintragserstellung im Log, und besagt soviel wie “immer, wenn ein Systemcall abschließt”. Mit der Option “-S” schränken wir nun die Art der Systemcalls ein auf “execve”, was die Ausführung eines Kommandos referenziert. Am Ende filtern wir noch auf den gewünschten Nutzer. Wichtig ist hier, die “auid” zu prüfen und nicht die “uid”, so protokolliert der auditd selbst die Kommandos mit, die über ein sudo oder gar über “sudo su” als ein komplett anderer Nutzer gestartet wurden. Die “auid” bezeichnet hierbei die Identität des Benutzers zum Zeitpunkt seines Logins und bleibt damit für alle Aktionen konstant, selbst wenn er effektiv seine Identität wechselt.

Mit dem Befehl

auditctl -l

kann man nun prüfen, ob die Regel angenommen wurde. Per default ist diese Liste in der Regel leer.

Die Aktionen des Benutzers sollten nun im Logfile inklusive aller Parameter und sonstiger Details erscheinen, wo dieses liegt entnimmt oder konfiguriert man in der “auditd.conf”, in der Regel ist es aber unter “/var/log/…” zu finden.

Soll das Ganze bootfest gemacht werden muss noch eine entsprechende Zeile in die “audit.rules” eingetragen werden. “-a exit,always -S execve -F auid=Benutzername“, also die Parameter, wie sie dem auditctl übergeben werden.

Noch kein Kommentar »

Kommentar schreiben:

XHTML: Erlaubte Tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Blogverzeichnis - Blog Verzeichnis bloggerei.de    © 2011 – Powered by WordPress – Theme Papyrus 1.0 designed by Leonardo da Finchi