So verfolgen Sie am besten die Abenteuer eines unerfahrenen Administrators

8

Ich habe diesen Benutzer, der nur begrenzte Sudo-Berechtigungen hat, aber er schafft es von Zeit zu Zeit, Fehler zu machen. Ich möchte seine Abenteuer im Auge behalten, damit ich jeden Schaden mit weniger Graben rückgängig machen kann. Idealerweise möchte ich, dass ein Dienst mit den folgenden Funktionen gut integriert und präsentabel ist

  • Verfolgt die Eingabe und Ausgabe der Shell wie ttyrec(oder scriptoder sudowenn die Protokollierung eingerichtet ist) und kann die Sitzung wie ttyplay (oder scriptreplayoder sudoreplay) wiedergeben. Die Kompatibilität mit ncurses-Programmen wäre nett, aber nicht notwendig, ttyreckann dies anscheinend tun.
  • Verfolgt den Dateizugriff, die Erstellung und Änderung. Im Idealfall kann eine Datei auch jedes Mal gesichert werden, wenn sie geändert oder gelöscht wird.

Bisher habe ich mehrere Tools gefunden, die ich einrichten müsste, um die meisten der angeforderten Funktionen zu erhalten, aber ich bin nicht auf ein OSS-Produkt gestoßen, das sie gut integriert (Lynis Community Edition ist sich der Funktionalität nicht wirklich klar). .

  • Ich könnte in ttyrec $(mktemp)( script $(mktemp)oder sudo -u $USER -imit eingerichteter Sudo-Protokollierung) .bashrcdie Shell- E / A protokollieren.
  • Einrichten der Überwachung Dateizugriff in einigen dirs zu verfolgen, wie /usr, /etc, /var.
  • Erstellen Sie einen LVM-Snapshot, wenn er sich anmeldet. Dies ist jedoch ein wenig übertrieben und kann die Systemleistung beeinträchtigen.

BEARBEITEN: ttyrec scheint eine bessere Alternative zu sein script, es würde alle meine E / A-Protokollierungsanforderungen erfüllen. Jetzt muss ich einen guten Weg finden, um die Dateimanipulation zu protokollieren.

Ich bin dankbar für Vorschläge oder Empfehlungen zu Best Practices.

Ondřej Grover
quelle
3
Hinweis: In einigen Ländern ist dies ohne die Erlaubnis des Benutzers möglicherweise nicht legal.
Cyrus
2
@ Cyrus danke für die Erinnerung, er würde davon wissen. Es geht mehr darum, einen weniger aufdringlichen und automatischeren Weg zu finden, als ihn zu bitten, sich daran zu erinnern, immer alles in einer scriptSitzung auszuführen . Es geht nicht darum, ihn auszuspionieren, sondern ihm die Gewissheit zu geben, dass seine Fehler zurückverfolgt werden können.
Ondřej Grover
3
Ich denke, dass dieser Benutzer keine Sudo-Berechtigungen haben sollte.
dr_
1
@ dr01 idealerweise ja, ich würde die Administration für ihn machen. Das ist aber nicht immer möglich. Er vermasselt nicht immer, ich muss nur ein Sicherheitsnetz aufbauen.
Ondřej Grover
2
Behalten Sie auch die Konfiguration in VCS bei .
Muru

Antworten:

2

Vielleicht können Sie Ihren Administrator dazu ermutigen , gute Protokollierungsmethoden anzuwenden. Gnu Screen macht das ganz gut. Es bietet einiges mehr Funktionalität, als Sie suchen, und bietet auch die Möglichkeit, die Protokollierung umzuschalten, sodass er sie auf Wunsch selbst ausschalten kann. Es fehlt die Wiedergabefunktion, aber es könnte Teil einer Lösung sein, da es die meisten Ein- und Ausgaben verfolgt, wenn die Protokollierung aktiviert ist.

In Ihrem Anwendungsfall möchten Sie deflog onder screenrc-Datei hinzufügen , um neue Windows-Standardeinstellungen für die Anmeldung zu erhalten.

Dies hat jedoch den Nachteil, dass es von Ihrem Benutzer umgeschaltet werden kann.

Sie können die Dateiüberwachung mit Monit durchführen , das die Dateiprüfsummen auf Änderungen überwacht und auch die Bedingungen verschiedener Dienste überprüft. Kombinieren Sie dies mit so etwas wie einem Rsync auf einem Cronjob (da Sie sowieso so etwas haben sollten) und Sie haben eine ziemlich solide Vorstellung davon, was genau auf dem Server vor sich geht, insbesondere wenn Sie wirklich enge Zeitstempel auf dem Bildschirm aktivieren und Ihrem Benutzer vertrauen nicht mit den Protokollierungseinstellungen herumzuspielen.

Wenn Sie diese Tools kombinieren, sollten Sie über ein ziemlich robustes und leichtes System verfügen, mit dem Sie Ihren Benutzer im Auge behalten und gleichzeitig ein grundlegendes Maß an Rettungsfähigkeit sicherstellen können.

James Biederbeck
quelle