Tripwire

Durchführung einer Konfiguration und mehrerer Prüfungen
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−

  1. Rechnernamen ermitteln:
  2. echo $HOSTNAME             # -> linux
    hostname                   # -> linux
  3. Lokalen Key erzeugen (1. Passphrase eingeben und merken!) und anzeigen (Binärformat):
  4. twadmin --generate−keys −L /etc/tripwire/linux−local.key
    ls −l /etc/tripwire/linux−local.key
  5. Site Key erzeugen (2. Passphrase eingeben und merken!) und anzeigen (Binärformat):
  6. twadmin −−generate−keys −S /etc/tripwire/site.key
    ls −l /etc/tripwire/site.key
  7. Konfigurations−Datei anpassen (normalerweise NICHT notwendig!)
  8. vi /etc/tripwire/tw.cfg
  9. Konfigurations−Datei in binäre signierte Form umwandeln (die vorher
    verwendete Passphrase des Site Keys eingeben!) und anzeigen (signiertes
    Binärformat):
  10. twadmin −−create−cfgfile −S /etc/tripwire/site.key /etc/tripwire/twcfg.txt
    ls −l /etc/tripwire/tw.cfg
  11. Richtliniendatei erstellen (vorher aus der mitgelieferten Musterdatei
    kopieren):
  12. cp /usr/share/doc/packages/tripwire/twpol.txt /etc/tripwire/twpol.txt
     vi /etc/tripwire/twpol.txt

    Einfaches Beispiel für „twpol.txt“ (eigenes Heimatverzeichnis sichern):

    /home/tom −> $(IgnoreNone); # Strichpunkt NICHT vergessen!:
    (rulename = FirstRule, severity = 0) {
    /home/tom/cat −> $(IgnoreNone);    # Strichpunkt NICHT vergessen!:
    }
  13. Richtlinien−Datei in binäre signierte Form umwandeln (die vorher verwendete
    Passphrase des Site Key eingeben!) und anzeigen (signiertes Binärformat):
  14. twadmin −−create−polfile −S /etc/tripwire/site.key /etc/tripwire/twpol.txt
    ls −l /etc/tripwire/twpol.pol
  15. Gemäß Richtlinien−Datei aus dem Dateisystem eine binäre, signierte
    Tripwire−Datenbank mit den ausgewählten Eigenschaften der ausgewählten
    Verzeichnisse und Dateien generieren (die vorher verwendete Passphrase des
    Local Key eingeben) und anzeigen:
  16. tripwire −−init
    ls −l /var/lib/tripwire/linux.twd
  17. Aktuellen Systemzustand gegen Tripwire−Datenbank prüfen (gibt ASCII−Report
    auf Bildschirm aus, erzeugt binären Report in „/var/lib/tripwire/report“):
  18. tripwire −−check
    ls −l /var/lib/tripwire/report
    # −> linux−20050218−103957.twr

    Erzeugte binäre Reportdatei nochmal in ausführlicher ASCII−Form ausgeben:

    twprint --print-report -r /var/lib/tripwire/report/linux−20050218−103957.twr

    Einschränkungen der zu prüfenden Regeln anhand Regelname oder Severity:

    tripwire --check --rule−name "FirstRule"
    tripwire --check --severity "100"
  19. Mehrere Änderungen am Heimatverzeichnis vornehmen:
  20. cd /home/tom
    mkdir VERZ
    touch VERZ/DATEI
    touch .profile
    echo "echo HiHi..." >> .bashrc
  21. Aktuellen Systemzustand nochmal gegen Tripwire−Datenbank prüfen (gibt
    ASCII−Report auf dem Bildschirm aus und erzeugt binären Report in
    „/var/lib/tripwire/report“):
  22. tripwire --check
     ls −l /var/lib/tripwire/report
     # −> linux−20050218−143957.twr

    Erzeugte binäre Reportdatei nochmal in ausführlicher ASCII−Form ausgeben:

     twprint --print-report -r /var/lib/tripwire/report/linux−20050218−143957.twr
  23. Anhand eines erzeugten Berichts (ist als Parameter anzugeben) die
    Tripwire−Datenbank updaten. Dazu wird der Bericht mit „[x]“ vor jeder
    Änderung im Editor „vim“ angezeigt (Pfad zum Editor vorher in Variable
    „VISUAL“ bekannt geben). Durch Löschen des „x“ wird eine Änderung für
    die Datenbank akzeptiert („[X/x]“ => „[]/[ ]“
  24. export VISUAL=/bin/vim
    env=LANG=C ; tripwire --update -r /var/lib/tripwire/report/linux−20050203−143957.twr
  25. Aktuellen Systemzustand nochmal gegen Tripwire−Datenbank prüfen (gibt
    ASCII−Report auf dem Bildschirm aus und erzeugt binären Report in
    „/var/lib/tripwire/report“):
  26. tripwire --check
     ls −l /var/lib/tripwire/report
     # −> linux−20050218−143957.twr

    Die akzeptierten Änderungen sollten nun nicht mehr berichtet werden.

  27. Tägliche Läufe des Tripwire−Reporting als „cronjob“ einrichten und den
    Bericht per Mail an USER@HOST versenden:
  28. crontab −e
     # MIN STD TAG MON WOTAG KMDO
     # 22 2 * * * /usr/sbin/tripwire −−check | mail −s "Tripwire" USER@HOST
  29. Modifikationen der Richtlinien müssen in der ASCII−Richtliniendatei
    vorgenommen werden. Dann ist die Tripwire−Datenbank anzupassen und die
    binäre Richtlinien−Datei neu zu erzeugen („low/high“)
  30. vi /etc/tripwire/twpol.txt
     tripwire −−update−policy −−secure−mode low /etc/tripwire/twpol.txt

    Dabei werden Verletzungen der Richtlinien berichtet (beim Standard "−−secure−mode low" wird dies nicht gemacht!).
    AM SCHLUSS wird automatisch die Binärform der Richtlinien−Datei erzeugt!