2013-09-26 6 views
6

Ich versuche, Auditd zu verwenden, um Änderungen an einem Verzeichnis zu überwachen. Das Problem ist, dass wenn ich eine Regel aufstelle, es das angegebene Verzeichnis überwacht, aber auch alle Unterverzeichnisse und Dateien, die den Monitor aufgrund endloser Ausführlichkeit unbrauchbar machen. HierAuditd - Auditctl Regel nur Dir zu überwachen (nicht alle Unterverzeichnissen und Dateien usw.)

ist die Regel, die ich Setup:

auditctl -w /home/raven/public_html -p war -k raven-pubhtmlwatch 

, wenn ich die Protokolle Suche mit

ausearch -k raven-pubhtmlwatch 

ich Tausende von Zeilen von Protokollen erhalten, die alles unter public_html Liste/

Wie kann Beschränke ich die Regel auf Änderungen im angegebenen Verzeichnis?

Vielen Dank.

+1

auch hier gefragt: http://superuser.com/q/650714/4714 –

+0

Diese Frage erscheint Wegthema zu sein, weil es wurde auf SuperUser gefragt/beantwortet - http://superuser.com/questions/650714/auditd-auditct-rule-to-monitor-dir-only-not-all-sub-dir-and-files-etc – Taryn

+0

@bluefeet Zu der Zeit, als ich diese Frage stellte, war ich mir nicht sicher, wo ich sie am besten veröffentlichen sollte. Wenn Sie der Meinung sind, dass dies nur überflüssig ist und anderen Nutzern, die nach diesem Produkt suchen, nicht weiterhilft, entfernen Sie es bitte. Bitte lassen Sie mich auch irgendeinen Vorschlag für die Zukunft wissen. Vielen Dank! – superuseroi

Antwort

11

Eine Uhr ist wirklich eine Syscall-Regel in Verkleidung. Wenn Sie auf einem Verzeichnis eine Uhr platzieren, AUDITCTL schaltet es in:

-a exit,always -F dir=/home/raven/public_html -F perm=war -F key=raven-pubhtmlwatch 

Das -F dir Feld rekursiv ist. Wenn Sie jedoch nur die Einträge im Verzeichnis ansehen möchten, können Sie dies in -F Pfad ändern.

Dies ist nicht rekursiv und überwacht nur den Inode, den das Verzeichnis belegt.

Ich hatte die Regel manuell in hinzuzufügen: /etc/audit/audit.rules

dann

mit neu starten auditd
/etc/init.d/auditd restart 

jetzt die Regeln hinzugefügt werden, und es funktioniert super! Alle Kredite an Steve @ RedHat geht, die meine Frage in der Prüfung Mailing-Liste beantwortet: https://www.redhat.com/archives/linux-audit/2013-September/msg00057.html

+0

Ich musste dieses brilliante 'auditctl'-Ding in einem Produktionsserver verwenden. Ich mache mir jetzt Sorgen, dass dies die Leistung beeinträchtigen könnte. Ist es genug, 'auditctl -D' zu tun, um alle Regeln zu entfernen, oder muss ich es deinstallieren oder in irgendeiner Weise deaktivieren? Wissen Sie? Vielen Dank! – pgr

+0

Welche Art von Uhr erzeugt die von Ihnen bereitgestellte Syscall-Regel? dh ich habe eine Regel, die nur nach Attributänderungen sucht, dh sie hat den Schalter "-p a". Welche Syscall-Regel würde das erzeugen? Syscall-Regeln müssen auch nicht den Schalter '-S' verwenden, um festzulegen, welcher Syscall zu sehen ist. – Andrew

+0

Nicht ganz korrekt: Wenn Sie eine Uhr auf ein Verzeichnis ohne Angabe von Berechtigungen platzieren, ist der Standard Warx, nicht War. Beachten Sie, dass auditctl die zu überwachenden Dateien und Verzeichnisse akzeptiert, solange der ungültige Teil das Blatt ist. Ungültige Pfade, die früher als das Blatt fehlschlagen, verursachen einen Fehler. – Urhixidur