GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Überwachung des Linux-Dateizugriffs?

Gibt es in Unix eine Möglichkeit herauszufinden, wer in der letzten Woche auf eine bestimmte Datei zugegriffen hat? Es kann ein Benutzer oder ein Skript sein, das es an einen anderen Ort überträgt. Kann ich eine Liste der Benutzernamen erhalten, die auf eine bestimmte Datei zugegriffen haben? Wie kann ich herausfinden, wer auf eine bestimmte Datei zugreift??

Akzeptierte Antwort:

Wer auf welche Datei zugegriffen hat, wird nicht protokolliert, es sei denn, Sie verfügen über äußerst ungewöhnliche Protokollierungsrichtlinien (das wäre eine riesige Menge an Informationen). Wer wann eingeloggt war, können Sie den Systemprotokollen entnehmen; der last Der Befehl gibt Ihnen den Anmeldeverlauf und andere Protokolle wie /var/log/auth.log teilt Ihnen mit, wie sich Benutzer authentifiziert haben und von wo aus sie sich angemeldet haben (welches Terminal oder welcher Host, falls entfernt).

Das Datum, an dem eine Datei zuletzt gelesen wurde, wird als Zugriffszeit oder kurz atime bezeichnet. Alle Unix-Dateisysteme können es speichern, aber viele Systeme zeichnen es nicht auf, weil es eine (normalerweise kleine) Leistungseinbuße hat. ls -ltu /path/to/file oder stat /path/to/file zeigt die Zugriffszeit der Datei an.

Wenn ein Benutzer auf die Datei zugegriffen hat und nicht versucht hat, seine Spuren zu verbergen, wird sein Shell-Verlauf (z. B. ~/.bash_history ) kann Hinweise haben.

Um herauszufinden, was oder wer gerade eine Datei geöffnet hat, verwenden Sie lsof /path/to/file .

Um zu protokollieren, was in Zukunft mit einer Datei passiert, gibt es mehrere Möglichkeiten:

  • Verwenden Sie inotifywait. inotifywait -me access /path/to gibt eine Zeile /path/to/ ACCESS file aus wenn jemand file liest . Diese Schnittstelle sagt Ihnen nicht, wer auf die Datei zugegriffen hat; Sie können lsof /path/to/file aufrufen sobald diese Zeile erscheint, aber es gibt eine Race-Condition (der Zugriff kann beendet sein, wenn lsof startet).

  • LoggedFS ist ein stapelbares Dateisystem, das eine Ansicht eines Dateisystembaums bietet und eine schickere Protokollierung aller Zugriffe über diese Ansicht durchführen kann. Informationen zur Konfiguration finden Sie unter LoggedFS-Konfigurationsdateisyntax.

  • Sie können das Audit-Subsystem von Linux verwenden, um eine große Anzahl von Dingen zu protokollieren, einschließlich Dateisystemzugriffen. Stellen Sie sicher, dass auditd Daemon gestartet ist, konfigurieren Sie dann mit auditctl, was Sie protokollieren möchten . Jeder protokollierte Vorgang wird in /var/log/audit/audit.log aufgezeichnet (bei typischen Distributionen). So starten Sie die Wiedergabe einer bestimmten Datei:

      auditctl -w /path/to/file
    

    Wenn Sie ein Verzeichnis überwachen, werden die Dateien darin und seine Unterverzeichnisse rekursiv ebenfalls überwacht.


Linux
  1. Eine Einführung in die Überwachung von Linux-Benutzerkonten

  2. Linux – Alles ist eine Datei?

  3. UNIX/Linux :Grundlagen der Zugriffssteuerungslisten (ACLs).

  4. So prüfen Sie den Dateizugriff unter Linux

  5. Überwachen von Dateiänderungen c++ linux

Weniger Befehl unter Linux

Gzip-Befehl unter Linux

Gunzip-Befehl unter Linux

Stat-Befehl unter Linux

Who-Befehl in Linux

Was ist umask unter Linux?