SlideShare uma empresa Scribd logo
1 de 159
Baixar para ler offline
Installations- und
Konfigurationshandbuch

GeNUA mbH, Kirchheim

          0.9.5
Urheberrecht ©2007–2011 GeNUA Gesellschaft für Netzwerk- und Unix–Administration
mbH. Alle Rechte vorbehalten.
• Einführung
• Installation
• GUI Überblick
• Konfiguration
• Betrieb
• Logging
• Fehlerbehandlung
• Anhang
• Glossar
Inhaltsverzeichnis

1 Einführung                                                                                       3
     1.1     Anoubis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .       3
           1.1.1    Einleitung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .     3
           1.1.2    Was ist Anoubis? . . . . . . . . . . . . . . . . . . . . . . . . . . .         3
     1.2     Über dieses Handbuch . . . . . . . . . . . . . . . . . . . . . . . . . . . .          4
           1.2.1    Terminologien und Abkürzungen . . . . . . . . . . . . . . . . . . .            4
           1.2.2    Die Gliederung des Handbuchs . . . . . . . . . . . . . . . . . . .             5

2 Installation                                                                                     9
     2.1     Allgemein . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .       9
           2.1.1    Empfohlene Systemkonfiguration . . . . . . . . . . . . . . . . . .              9
     2.2     Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .     10
           2.2.1    Deinstallation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .    10
     2.3     Fedora . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .     11
           2.3.1    Deinstallation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .    12
     2.4     OpenSuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .       12
           2.4.1    Deinstallation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .    13
     2.5     OpenBSD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .        13
           2.5.1    Deinstallation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .    16
     2.6     Ubuntu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .     17
           2.6.1    Deinstallation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .    17

3 GUI Überblick                                                                                   21
     3.1     Statusanzeige . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .      21
     3.2     Navigationsleiste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .      22
     3.3     Hauptfenster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .     22
     3.4     Infoleiste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .   22
     3.5     Werkzeuge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .      22
     3.6     Trayicon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .     22
           3.6.1    Benachrichtigung über offene Nachfragen . . . . . . . . . . . . .             23
           3.6.2    Benachrichtigung über Alarme . . . . . . . . . . . . . . . . . . . .          23
           3.6.3    Normalzustand . . . . . . . . . . . . . . . . . . . . . . . . . . . . .       23
vi                                                                                      INHALTSVERZEICHNIS


     3.7     Benachrichtigungen und Anfragen . . . . . . . . . . . . . . . . . . . . . .                          24
           3.7.1    Benachrichtigungen . . . . . . . . . . . . . . . . . . . . . . . . . .                        24
     3.8     Einstellungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                      25
           3.8.1    Einstellungen zur Esklationsbenachrichtigung . . . . . . . . . . .                            25
           3.8.2    Einstellungen zur Alarmbenachrichtigung . . . . . . . . . . . . . .                           25
           3.8.3    Autostart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                     25
           3.8.4    RuleEditor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                      26
           3.8.5    Verbindung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                      26
           3.8.6    Tool Tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                     26
     3.9     Upgrade Dialogbox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                        26

4 Konfiguration                                                                                                    31
     4.1     Allgemein . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                      31
           4.1.1    anoubisctl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                      31
           4.1.2    sfssig . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                    34
           4.1.3    Playground . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                      36
     4.2     Kontexte und Kontextwechsel . . . . . . . . . . . . . . . . . . . . . . . .                          39
           4.2.1    Grundlagen      . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                   39
           4.2.2    Aufbau von Kontext-Regeln . . . . . . . . . . . . . . . . . . . . . .                         39
           4.2.3    Spezielle Kontextwechsel . . . . . . . . . . . . . . . . . . . . . . .                        40
     4.3     ALF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                    41
     4.4     SFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                    42
           4.4.1    Behandlung von symbolischen Links . . . . . . . . . . . . . . . .                             45
           4.4.2    SFS-Ausnahmen für einzelne Anwendungen . . . . . . . . . . . .                                45
     4.5     Sandbox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                      46
     4.6     Version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                    48
     4.7     Schlüssel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                    48
     4.8     Regelwizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                      49
     4.9     anoubisd.conf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                      50
           4.9.1    Unixsocket . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                      50
           4.9.2    Upgradeoptionen . . . . . . . . . . . . . . . . . . . . . . . . . . .                         50
           4.9.3    Authentisierung . . . . . . . . . . . . . . . . . . . . . . . . . . . .                       52
           4.9.4    Inhaltsscanner . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                      53
           4.9.5    Sonstige Optionen . . . . . . . . . . . . . . . . . . . . . . . . . . .                       53
     4.10 Spezielle Hinweise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                          54
           4.10.1   .xanoubis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                     54
           4.10.2   nscd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                    54
           4.10.3   System-V IPC . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                        55

                                      Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
INHALTSVERZEICHNIS                                                                                              vii


5 Betrieb                                                                                                       59
        5.1     Anzeigen und Beantworten von Eskalationen . . . . . . . . . . . . . . . .                       59
              5.1.1       Benachrichtigung über offene Eskalationen . . . . . . . . . . . . .                   59
              5.1.2       Anzeigen und Entscheiden von Eskalationen . . . . . . . . . . . .                     59
        5.2     Regelwizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                 60
              5.2.1       Regelkonfiguration einer Anwendung mit dem Regelwizard . . . .                         60
        5.3     LogViewer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                 72
        5.4     RuleEditor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                72
              5.4.1       Bearbeiten von Regeln . . . . . . . . . . . . . . . . . . . . . . . .                 72
              5.4.2       Administratorregeln . . . . . . . . . . . . . . . . . . . . . . . . . .               73
              5.4.3       Speichern und Aktivieren . . . . . . . . . . . . . . . . . . . . . . .                74
        5.5     Applikationsregeln . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                74
              5.5.1       Regeleditor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .             74
              5.5.2       Der Prozessbrowser . . . . . . . . . . . . . . . . . . . . . . . . . .                76
        5.6     ALF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .               78
              5.6.1       Überblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .             78
              5.6.2       RuleEditor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .              78
        5.7     SFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .               79
              5.7.1       Überblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .             79
              5.7.2       RuleEditor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .              79
              5.7.3       Einführung in den SFS-Browser . . . . . . . . . . . . . . . . . . .                   80
              5.7.4       Schlüssel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .             81
              5.7.5       Prüfsumme validieren . . . . . . . . . . . . . . . . . . . . . . . . .                82
              5.7.6       Prüfsumme anzeigen . . . . . . . . . . . . . . . . . . . . . . . . .                  82
              5.7.7       Prüfsumme hinzufügen . . . . . . . . . . . . . . . . . . . . . . . .                  83
              5.7.8       Prüfsumme entfernen . . . . . . . . . . . . . . . . . . . . . . . . .                 84
              5.7.9       Erweiterte Operationen . . . . . . . . . . . . . . . . . . . . . . . .                84
        5.8     Sandbox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                 84
              5.8.1       Überblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .             84
              5.8.2       RuleEditor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .              84
        5.9     Playground . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                85
              5.9.1       Grundlagen          . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .       85
              5.9.2       Manuelles Starten von Applikationen im Playground . . . . . . . .                     86
              5.9.3       Regelbasiertes Starten von Applikationen im Playground . . . . .                      88
              5.9.4       Arbeiten in Playgrounds . . . . . . . . . . . . . . . . . . . . . . . .               90
              5.9.5       Auflisten von Playgrounds                . . . . . . . . . . . . . . . . . . . . . .   91
              5.9.6       Übernehmen von Dateien aus einem Playground                       . . . . . . . . .   93
              5.9.7       Löschen von Dateien aus einem Playground . . . . . . . . . . . .                      94
        5.10 Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                   94
              5.10.1      Einführung in den Profil Editor . . . . . . . . . . . . . . . . . . . .                94

Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
viii                                                                                     INHALTSVERZEICHNIS


             5.10.2   Laden eines Profils . . . . . . . . . . . . . . . . . . . . . . . . . .                       95
             5.10.3   Erzeugen und Aktualisieren eines Profils . . . . . . . . . . . . . .                          95
             5.10.4   Löschen eines Profils . . . . . . . . . . . . . . . . . . . . . . . . .                       96
       5.11 Versionskontrolle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                        96
             5.11.1   Version wiederherstellen . . . . . . . . . . . . . . . . . . . . . . .                       96
             5.11.2   Version exportieren . . . . . . . . . . . . . . . . . . . . . . . . . .                      97
             5.11.3   Version löschen . . . . . . . . . . . . . . . . . . . . . . . . . . . .                      97
       5.12 Upgrade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                        97
             5.12.1   Benutzer-Signaturen . . . . . . . . . . . . . . . . . . . . . . . . .                        98
             5.12.2   Administrator-Signaturen . . . . . . . . . . . . . . . . . . . . . . .                       98
       5.13 Authorisierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                       98

6 Logging                                                                                                        101
       6.1     Übersicht über die Ereignisarten . . . . . . . . . . . . . . . . . . . . . . . 101
       6.2     Logviewer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
             6.2.1    Öffnen des Logviewers . . . . . . . . . . . . . . . . . . . . . . . . 102
             6.2.2    Ergebnis eines Ereignisses . . . . . . . . . . . . . . . . . . . . . . 102
             6.2.3    Konfiguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
             6.2.4    Speicherung von Log-Meldungen . . . . . . . . . . . . . . . . . . 103
       6.3     ALF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
             6.3.1    Typen von ALF-Meldungen . . . . . . . . . . . . . . . . . . . . . . 103
             6.3.2    Detailinformationen in ALF-Meldungen . . . . . . . . . . . . . . . 104
       6.4     Sandbox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
       6.5     SFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
       6.6     Playground . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

7 Fehlerbehandlung                                                                                               109
       7.1     Allgemein . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
             7.1.1    Beim Klick auf eine Eskalationsmeldung bekommt die Anwendung
                      keinen Fokus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
             7.1.2    Bei aktiviertem Autostart von xanoubis werden mehrere Instanzen
                      erzeugt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
             7.1.3    Bei Aktivieren einer Policy wird ein Fehler gemeldet . . . . . . . . 111
             7.1.4    Nach Hinterlegen des Zertifikates wird Policy nicht geladen . . . . 111
             7.1.5    Beim Editieren von Sandbox-/SFS-Regeln kann ich keinen Pfad
                      auswählen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
             7.1.6    Auswahldialog für Datei oder Verzeichnis zeigt keine versteckten
                      Objekte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
             7.1.7    Neu einlesen der Konfiguration funktioniert nicht . . . . . . . . . . 112
             7.1.8    Xanoubis meldet, dass ein neuer Kernel installiert wurde . . . . . 112
             7.1.9    Xanoubis meldet: Falsche APN-Version . . . . . . . . . . . . . . . 112

                                       Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
INHALTSVERZEICHNIS                                                                                     ix


              7.1.10      Xanoubis meldet: Falsche Anoubis-Protokoll-Version . . . . . . . 112
              7.1.11      Xanoubis meldet: Falsche .xanoubis-Version . . . . . . . . . . . . 112
              7.1.12      Xanoubis meldet: Fehlender Schlüssel . . . . . . . . . . . . . . . 113
              7.1.13      Xanoubis meldet: Falsches Zertifikat . . . . . . . . . . . . . . . . . 113
              7.1.14      Der Anoubis-Kern bootet nicht in einer VirtualBox . . . . . . . . . 113
              7.1.15      Aus einer Eskalation kann keine Regel erzeugt werden . . . . . . 113
        7.2     ALF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
              7.2.1       Nach einiger Zeit ist keine Netzwerkverbindung mehr möglich . . 114
              7.2.2       Das automatische Update funktioniert nicht mehr . . . . . . . . . 114
        7.3     Sandbox und SFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
              7.3.1       Zugriff auf eine Datei wird verweigert . . . . . . . . . . . . . . . . 114
              7.3.2       Nach einer Regeländerung hängt das System . . . . . . . . . . . 114
              7.3.3       Es kann kein neuer SFS-Block erstellt werden . . . . . . . . . . . 115
              7.3.4       Im Schlüssel-Tab wird eine Warnung angezeigt            . . . . . . . . . . 116
              7.3.5       Beim Erstellen einer Prüfsumme wird ein Fehler gemeldet . . . . 116
              7.3.6       Im Sandbox-Modul wird eine Regel angezeigt, diese wirkt aber nicht116
              7.3.7       Nach dem Hinzufügen vieler Prüfsummen treten Fehler auf . . . . 116
        7.4     Playground . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
              7.4.1       Firefox startet, aber nicht im Playground . . . . . . . . . . . . . . . 117
              7.4.2       Eine Applikation startet, aber nicht im Playground . . . . . . . . . 117
              7.4.3       Playground kann nicht gelöscht werden . . . . . . . . . . . . . . . 117

8 Fremdsoftware                                                                                     121
        8.1     Virenscanner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
              8.1.1       Avira Antivirus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
              8.1.2       ClamAV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
              8.1.3       Sophos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
        8.2     Festplattenverschlüsselung . . . . . . . . . . . . . . . . . . . . . . . . . . 124
              8.2.1       TrueCrypt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
              8.2.2       eCryptfs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
        8.3     X-Server (Xorg) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
              8.3.1       Deaktivieren von Xtest . . . . . . . . . . . . . . . . . . . . . . . . 126

A Abstract Policy Notation                                                                          127
        A.1 Grundlagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
              A.1.1       Administrator- und Benutzerregeln . . . . . . . . . . . . . . . . . . 127
              A.1.2       Vererbung von Regeln (Kontext-Modul) . . . . . . . . . . . . . . . 127
              A.1.3       Standardvorgaben für Ereignisse . . . . . . . . . . . . . . . . . . 128
        A.2 Allgemeine Elemente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
              A.2.1       Allgemeine Grammatik . . . . . . . . . . . . . . . . . . . . . . . . 129
              A.2.2       Identifikation von Applikationen . . . . . . . . . . . . . . . . . . . . 129

Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
x                                                                                      INHALTSVERZEICHNIS


           A.2.3    Regel-Identifikation . . . . . . . . . . . . . . . . . . . . . . . . . . 130
           A.2.4    Scope – Regeln mit eingeschränkter Gültigkeit . . . . . . . . . . . 130
           A.2.5    Kommentare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
           A.2.6    Version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
     A.3 Vererbung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
     A.4 Application Level Firewall . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
           A.4.1    Filterregeln . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
           A.4.2    Capability-Regeln . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
           A.4.3    Default-Regeln . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
     A.5 Sandbox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
     A.6 SFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134

B Architektur und Pfade                                                                                        137
     B.1     Kernelkomponente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
     B.2     Der Anoubis-Daemon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
           B.2.1    Pfade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
     B.3     Anoubis Werkzeuge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139

C SFS Import/Export                                                                                            141

D Interface für Inhaltsscanner                                                                                 143

E Glossar                                                                                                      147




                                     Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
E INFÜHRUNG
• Anoubis
• Über dieses Handbuch
Kapitel 1

Einführung

1.1       Anoubis

1.1.1      Einleitung
Anoubis - die Security-Suite
für Enterprise-Umgebungen Webhoster und mobile Rechner:

  • Kontrolliert anwendungsbezogen Netzwerk- und Dateizugriffe
  • Schützt vor persistenten Manipulationen Ihrer Anwendungen und Dokumente
  • Stellt die Integrität Ihrer Dokumente sicher
  • Verfügbar für OpenBSD und GNU/Linux-Distributionen


1.1.2      Was ist Anoubis?
Anoubis ist eine benutzerfreundliche Security Suite, die eine stark abgesicherte Ablau-
fumgebung für Softwareprogramme implementiert. Zielsetzung von Anoubis ist es, eine
erstmalig alle Aspekte des Sicherheitsmanagements von Rechnersystemen umfassende
Lösung zu schaffen, die sowohl die Betriebssysteme der Linux- als auch der BSD-Familie
unterstützt.
Das Kernstück der Security Suite bilden zum Einen eine Application Level Firewall 1 und
eine Sandbox, mit deren Hilfe Prozesse in einer abgeschotteten Umgebung ausgeführt
werden können, die nur die notwendigen Zugriffe auf vorhandende Dateien und Netz-
werkresourcen erlaubt. Zum Anderen bieten Playgrounds die Möglichkeit, Programme so
auszuführen, dass diese keinerlei Änderungen an Dateien im Produktivsystem direkt vor-
nehmen können. Die Programme werden dadurch weder in ihrer Funktion beeinträchtigt
noch müssen die Programme angepaßt oder verändert werden.
Zusammen kann damit sowohl der ungewollte Abfluß von Informationen aus dem System
als auch das ungewollte Eindringen von Daten in das System verhindert werden.
Darüber hinaus werden Mechanismen zur Sicherstellung der Authentizität von Dateien
und Verzeichnissen sowie von Applikationen bereitgestellt. Hierbei werden diese mittels
zeitgemäßer Prüfsummen versehen, die darüber hinaus noch signiert werden können.
  1
      kursiv notierte Begriffe können dem Glossar in Anhang E entnommen werden
4                                                                                                1. Einführung


Die Maßnahmen zur Verbesserung der Sicherheit der Laufzeitumgebung sind sowohl für
den Desktop- als auch für den Serverbetrieb gedacht.
Anoubis besteht aus den folgenden vier Modulen, die unterschiedliche Aspekte einer ab-
gesicherten Umgebung realisieren:

Application Level Firewall (ALF) Die Application Level Firewall oder kurz ALF kontrol-
    liert die Netzwerkzugriffe einzelner Applikationen. Dabei kann für jede Applikation
    individuell festgelegt werden, welche Netzwerkdienste diese nutzen darf.

Sandbox (SB) Die Sandbox oder kurz SB kontrolliert die Dateisystemzugriffe einzelner
   Applikationen. Dabei kann wieder für jede Applikation individuell festgelegt werden,
   welche Zugriffe zulässig sind.

Sicheres Filesyste (SFS) Das sichere Filesystem oder kurz SFS sorgt für die Verwaltung
    von Prüfsummen für Dateien im System. Jeder Benutzer kann individuell Prüfsum-
    men verwalten. Änderungen an Dateien können dadurch festgestellt werden. Darüber
    hinaus können die Prüfsummen aber auch direkt beim Zugriff auf Dateien geprüft wer-
    den. So kann der Zugriff auf eine Datei vollständig verhindert werden, wenn Ihr Inhalt
    nicht mehr mit der registrierten Prüfsumme übereinstimmt.

Playground (PG) Der Playground bietet die Möglichkeit, Programme so zu starten, dass
    sie keine Änderungen an existierenden Dateien vornehmen können. Versucht ein
    Programm dennoch Änderungen zu machen, dann wird die Datei kopiert und die
    Änderungen werden nur auf der Kopie vorgenommen. Das Playground Modul sorgt
    dafür, dass dies durch das Programm selbst nicht bemerkt wird. Es sind auch keinerlei
    Änderungen am Programm selbst notwendig.
      Bevor auf Dateien, die in einem Playground verändert wurden, von anderen Program-
      men außerhalb des Playgrounds zugegriffen werden können, müssen Sie durch den
      Benutzer ins System übernommen werden. Dabei kann vor der Übernahme der Da-
      teiinhalt durch Inhaltsscanner (z.B. einen Virenscanner) überprüft werden.
      So wird zuverlässig verhindert, dass Daten durch die in einem Playground laufende
      Anwendung unkontrolliert ins eigentliche System gelangen können.



1.2     Über dieses Handbuch

1.2.1 Terminologien und Abkürzungen

Im vorliegenden Handbuch werden u.a. die nachfolgenden Abkürzungen verwendet:

ALF für Application Level Firewall

SFS für Sicheres Filesystem

SB für Sandbox

PG für Playground

                                  Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
1.2. Über dieses Handbuch                                                              5


Textdarstellungen
 Konvention Bedeutung
 Text ¤
 §
              Text für Aus- oder Eingaben, Dateinamen
 Enter ¥
 ¦            Einzelne Taste auf der Tastatur
 Objekt       Name eines Objektes im GUI (z.B. Menü) oder eines Programms
 Begriff      Kennzeichnet einen Begriff des Glossars
Darüber hinaus finden zahlreiche Abkürzungen aus dem Netzwerk- und Security-Bereich
Verwendung, die zumeist im Glossar in Anhang E nachgeschlagen werden können.


1.2.2       Die Gliederung des Handbuchs
Das vorliegende Handbuch untergliedert sich in die folgenden Abschnitte:

Einführung Neben der hier vorliegenden Einleitung finden Sie hier darüber hinaus allge-
    meine Informationen zu Anoubis.
Installation Im Kapitel Installation werden die notwendigen Schritte zur Installation von
     Anoubis dargelegt.
GUI Überblick Das Kapitel GUI Überblick gewährt einen Überblick hinsichtlich der we-
    sentlichen Bestandteile der Graphischen Oberfläche von Anoubis.
Konfiguration Nach erfolgter Installation beschreibt dieses Kapitel alle Schritte zur Kon-
   figuration von Anoubis. Hierbei werden zu Beginn allgemein gültige und modulüber-
   greifende Konfigurationsmöglichkeiten der Security Suite Anoubis dargelegt. Daran
   schließt sich eine detaillierte Vorstellung der einzelnen Sicherheitsmodule und de-
   ren spezifischen Einstellungsmöglichkeiten an. Die umfassenden Möglichkeiten zur
   Konfiguration mittels GUI werden hierbei in einem eigenen Kapitel aufgezeigt.
Betrieb Dieses Kapitel stellt typische Konfigurationsszenarien von Anoubis vor und rich-
    tet sich hauptsächlich an fortgeschrittene Anwender.
Logging Dieses Kapitel bietet ein Übersicht über die Ereignisarten, eine Beschreibung
   des LogViewer und Loggingfunktionen von ALF, SB und SFS.
Fehlerbehandlung Anhand von ausgewählten Szenarien beschreibt dieses Kapitel die
    notwendigen Schritte zur Lösung von Problemen.
Abstract Policy Notation In Anhang A wird eine Übersicht zur von den einzelnen Kom-
    ponenten verwendeten Metasprache gegeben.
Architektur und Pfade Hier wird eine grobe Übersicht über den Aufbau von Anoubis
    gegeben, sowie über wichtige Dateien die zu Anoubis gehören.
SFS Import/Export Das beim Import und Export von Prüfsummen und Signaturen ver-
   wendete Dateiformat, wird in Anhang C ausführlicher beschrieben.
Interface für Inhaltsscanner In Anhang D wird die Schnittstelle zu Inhaltsscannern für
     den Playground spezifiziert.
Glossar Ein Großteil der im Handbuch verwendeten Begrifflichkeiten kann im Glossar in
    Anhang E nachgeschlagen werden.

Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
6                                                                  1. Einführung




    Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
I NSTALLATION
 • Allgemein
 • Debian
 • Fedora
 • OpenSuse
 • OpenBSD
 • Ubuntu
Kapitel 2

Installation

2.1    Allgemein
Die Anoubis-Security-Suite besteht aus drei Paketen:

   • dem Kernel (Name plattform- bzw. distributionsabhängig)
   • dem Daemon (anoubisd unter Linux bzw. anoubis-daemon unter OpenBSD)
   • der graphischen Benutzeroberfläche xanoubis (anoubis-gui unter OpenBSD)

Um die Sicherheitsfunktionen von Anoubis nutzen zu können, müssen alle drei Kompo-
nenten installiert sein und der Anoubis-Kernel muss gebootet sein. Auch wenn Anoubis
installiert ist, ist es auch weiterhin möglich, einen Kernel ohne Anoubis-Funktionalität zu
booten.


2.1.1 Empfohlene Systemkonfiguration

Partition für SFS Prüfsummen
Anoubis verwaltet den Prüfsummenbestand unterhalb des Verzeichnisses
/var/lib/anoubis/sfs/. Dort werden unter Umständen sehr viele, in der Re-
gel aber sehr kleine Dateien erzeugt. Wir empfehlen daher, für das Verzeichnis
/var/lib/anoubis/sfs/ eine separate Partition zu verwenden. Diese sollte für das
Speichern von sehr vielen kleinen Dateien optimiert sein. Hier bietet sich zum Beispiel
eine XFS-Partition an, die wie folgt erzeugt wurde:

mkfs.xfs -b size=512 -i maxpct=80 /device/of/partition


Wenn keine geeignete Partition zur Verfügung steht, kann auch eine Datei verwendet und
mit Hilfe von loopback-Mounts als Partition gemountet werden.


Playground Spool Verzeichnis
Wenn Sie vorhaben, Inhaltsscanner zusammen mit dem Playground einzusetzen, dann
muss diesen ein Spool-Verzeichnis zur Verfügung stehen. Als Spool-Verzeichnis wird das
10                                                                                              2. Installation


Heimatverzeichnis des Benutzers _anoubisscan verwendet. Dort sollte genügen freier
Platz zum Zwischenspeichern von Dateien vorhanden sein. Normalerweise liegt dieses
unter /var/spool/anoubis.
Achtung: Das verwendete Spool-Verzeichnis darf nur für den Benutzer _anoubisd les-
bar sein.



2.2    Debian
Die Anweisungen in diesem Abschnitt beziehen sich auf Debian 5.0 “Lenny”. Um das In-
stallieren der Debian-Pakete - vom lokalen Dateisystem aus - mittels dpkg durchzuführen,
kopieren Sie bitte die drei Pakete (kernel, anoubis und xanoubis) auf Ihr System. Wech-
seln Sie nun in das Verzeichnis, das die zuvor heruntergeladenen Pakete enthält. Die
Installation der Anoubis-Pakete kann danach wie folgt durchgeführt werden

dpkg -i linux-image-2.6.26-anoubis-0.9.2.d023.972.d076_1_i386.deb
dpkg -i anoubisd_0.9.2.D023.972.D076_i386.deb
dpkg -i xanoubis_0.9.2.D023.972.D076_i386.deb


Dabei wird durch den Aufruf in der ersten Zeile das Kernel-Paket installiert. Wenn
die default Bootloader-Konfiguration verwendet wird, wird ab dem nächsten Reboot die
Anoubis-Security-Suite aktiviert. Ansonsten muss der neue Kernel noch in →Grub oder
→Lilo konfiguriert werden.
Um die Installation, der von den Anoubis-Paketen benötigten Abhängigkeiten zu ermögli-
chen, geben Sie abschließend den folgenden Befehl ein.

apt-get -f install


Bei Bedarf kann der Zugriff auf das Device /dev/eventdev zusätzlich weiter einge-
schränkt werden:

chmod 600 /dev/eventdev




2.2.1 Deinstallation
Starten Sie das System neu und booten Sie den jeweiligen Standard-Kernel, der von ihrer
Distribution bereitgestellt wird. Um sowohl das Kernel-Paket als auch die Anoubis-Pakete
(anoubisd und xanoubis) sowie die zugehörigen Konfigurationsdateien zu deinstallie-
ren, gehen Sie - nach dem erfolgten Neustart des Systems - wie folgt vor.
Bestimmen Sie die installierten Anoubis-Pakete mittels des folgenden Kommandos.

dpkg --get-selections | grep anoubis | awk '{print $1}'


Eine beispielhafte Ausgabe könnte wie folgt aussehen.

anoubisd
linux-image-2.6.26-anoubis-0.9.2.d023.972.d133
xanoubis


                                 Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
2.3. Fedora                                                                              11


Um die aufgelisteten Pakete zu deinstallieren, gehen Sie wie folgt vor.

 dpkg --purge xanoubis
 dpkg --purge anoubisd
 dpkg --purge linux-image-2.6.26-anoubis-0.9.2.d023.972.d133



Beachten Sie bitte, dass die Anweisung zur Deinstallation des Kernel-Pakets den vollstän-
digen Namen (inklusive der Versionsnummer) aufweisen muss. Dieser ist entsprechend
der Ausgabe des oben genannten Kommandos anzupassen.
Die Komponenten anoubisd und xanoubis greifen auf zusätzliche Dateien und Pfade
zurück, die nicht im Rahmen der Deinstallation der Pakete entfernt werden. Um eine voll-
ständige Deinstallation aller für Anoubis relevanten Bestandteile durchzuführen, müssen
die unter Punkt B.2.1 und B.3 genannten Pfade und Dateien vom System entfernt werden.
Nach der Deinstallation der Anoubis-Pakete ist ein Reboot des Systems ratsam.




2.3        Fedora

Diese Anweisungen beziehen sich auf Fedora Core 11.
Wenn die RPM-Pakete anoubisd und xanoubis sowie das Kernel-Paket ins aktuelle
Verzeichnis heruntergeladen wurden, können sie mit dem folgenden Kommando installiert
werden.

 yum install *.rpm --nogpgcheck



Hierbei kann es zu Konflikten mit Paketen kommen, die auf dem System installiert und
aktueller sind, als die, die installiert werden sollen. Dabei kommt es zur folgenden Fehler-
meldung.

 $ Transaction Check Error:
     package <Paketname> (which is newer than <Paketname>) is already installed



Um das Paket dennoch zu installieren, rufen Sie bitte folgendes Kommando auf:

 $ rpm -i --force <Paketname>



Wenn die default Bootloader-Konfiguration verwendet wird, wird ab dem nächsten Reboot
die Anoubis-Security-Suite aktiviert. Ansonsten muss der neue Kernel noch in →Grub
oder →Lilo konfiguriert werden.
Bei Bedarf kann der Zugriff auf das Device /dev/eventdev zusätzlich weiter einge-
schränkt werden:

 chmod 600 /dev/eventdev


Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
12                                                                                               2. Installation


2.3.1 Deinstallation
Starten Sie das System neu und booten Sie den jeweiligen Standard-Kernel, der von ihrer
Distribution bereitgestellt wird. Um sowohl das Kernel-Paket als auch die Anoubis-Pakete
(anoubisd und xanoubis) sowie die zugehörigen Konfigurationsdateien zu deinstallie-
ren, gehen Sie - nach dem erfolgten Neustart des Systems - wie folgt vor.
Bestimmen Sie die installierten Anoubis-Pakete mittels des folgenden Kommandos.
rpm -qa | grep anoubis


Eine beispielhafte Ausgabe könnte wie folgt aussehen.
xanoubis-0.9.2.D023.972.D133-2
kernel-2.6.26anoubis0.9.2.d023.972.d133-1
anoubisd-0.9.2.D023.972.D133-2


Um die aufgelisteten Pakete zu deinstallieren, gehen Sie wie folgt vor.
yum remove xanoubis
yum remove anoubisd
yum remove kernel-2.6.26anoubis0.9.2.d023.972.d105-1


Beachten Sie bitte, dass die Anweisung zur Deinstallation des Kernel-Pakets den vollstän-
digen Namen (inklusive der Versionsnummer) aufweisen muss. Dieser ist entsprechend
der Ausgabe des oben genannten Kommandos anzupassen.
Die Komponenten anoubisd und xanoubis greifen auf zusätzliche Dateien und Pfade
zurück, die nicht im Rahmen der Deinstallation der Pakete entfernt werden. Löschen Sie
die Dateien und Verzeichnisse, die unter den Punkten B.2.1 und B.3 genannt werden, um
eine vollständige Deinstallation durchzuführen.
Nach der Deinstallation des Anoubis-Pakete ist ein Reboot des Systems ratsam.


2.4    OpenSuse
Diese Anweisungen beziehen sich auf OpenSuse 11.2.
Wenn die RPM-Pakete anoubisd und xanoubis sowie das Kernel-Paket ins aktuelle
Verzeichnis heruntergeladen wurden, können sie mit folgenden Kommandos installiert
werden.
zypper install kernel-default-2.6.31.5-0.1.i586.rpm
zypper install anoubisd-0.9.2-1.i586.rpm
zypper install xanoubis-0.9.2-1.i586.rpm


In diesen Kommandos müssen die Versionsnummern der Pakete durch die Versionsnum-
mern der heruntergeladenen Pakete ersetzt werden.
Wenn die default Bootloader-Konfiguration verwendet wird, wird ab dem nächsten Reboot
die Anoubis-Security-Suite aktiviert. Ansonsten muss der neue Kernel noch in →Grub
oder →Lilo konfiguriert werden.
Bei Bedarf kann der Zugriff auf das Device /dev/eventdev zusätzlich weiter einge-
schränkt werden:
chmod 600 /dev/eventdev


                                  Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
2.5. OpenBSD                                                                              13


2.4.1       Deinstallation
Starten Sie das System neu und booten Sie den jeweiligen Standard-Kernel, der von ihrer
Distribution bereitgestellt wird. Um sowohl das Kernel-Paket als auch die Anoubis-Pakete
(anoubisd und xanoubis) sowie die zugehörigen Konfigurationsdateien zu deinstallie-
ren, gehen Sie - nach dem erfolgten Neustart des Systems - wie folgt vor.
Bestimmen Sie die installierten Anoubis-Pakete mittels des folgenden Kommandos.

 rpm -qa | grep anoubis


Eine beispielhafte Ausgabe könnte wie folgt aussehen.

 anoubisd-0.9.2.D023.972.D130-2
 xanoubis-0.9.2.D023.972.D130-2
 kernel-2.6.26anoubis0.9.2.d023.972.d130-1


Um die aufgelisteten Pakete zu deinstallieren, gehen Sie wie folgt vor.

 rpm -e xanoubis
 rpm -e anoubisd
 rpm -e kernel-2.6.26anoubis0.9.2.d023.972.d130-1


Beachten Sie bitte, dass die Anweisung zur Deinstallation des Kernel-Pakets den vollstän-
digen Namen (inklusive der Versionsnummer) aufweisen muss. Dieser ist entsprechend
der Ausgabe des oben genannten Kommandos anzupassen.
Die Komponenten anoubisd und xanoubis greifen auf zusätzliche Dateien und Pfade
zurück, die nicht im Rahmen der Deinstallation der Pakete entfernt werden. Um eine voll-
ständige Deinstallation aller für Anoubis relevanten Bestandteile durchzuführen, müssen
die unter Punkt B.2.1 und B.3 genannten Pfade und Dateien vom System entfernt werden.
Nach der Deinstallation der Anoubis-Pakete ist ein Reboot des Systems ratsam.



2.5        OpenBSD
Zur Installation des OpenBSD Release von Anoubis brennen Sie das ISO-Image auf CD
und booten von dieser. Alternativ lässt sich die Installation auch mittels einer Virtualisie-
rungssoftware wie qemu(1) wie folgt vornehmen:

 qemu-img create <Pfad/zum/Dateisystemimage> 4G
 qemu -hda <Pfad/zum/Dateisystemimage> -cdrom <Pfad/zum/ISO> -boot d



Im Folgenden wird schrittweise die Installation von Anoubis unter OpenBSD beispielhaft
durchgeführt.
Nach dem Bootvorgang begrüßt Sie der OpenBSD-Installer:

 root on rd0a swap on rd0b dump on rd0b
 erase ^?, werase ^W, kill ^U, intr ^C, status ^T

 Welcome to the OpenBSD/i386 4.6 install program.
         (I)nstall, (U)pgrade or (S)hell? I

Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
14                                                                                              2. Installation



Cool! Let's get to it.

At any promp except password prompts you can escape to a shell by
typing '!'. Default answers are shown in []'s and are selected by
pressing RETURN. You can exit this program at any time by pressing
Control-C. But this can leave your system in an inconsistent state.

Choose your keyboard layout ('?' or 'L' for list) [default] de
kbd: keyboard mapping set to de


Anschließend erfolgt die Konfiguration des Netzwerks.

System hostname? (short form, e.g. 'foo') anoubis

Available network interfaces are: fxp0 x10.
Which one do you wish to configure? (or 'done') [x10] <Enter>
IPv4 address for x10? (or 'dhcp' or 'none') [dhcp] <Enter>
Issuing hostname-associated DHCP request for x10.
DHCPDISCOVER on fxp0 to 255.255.255.255 port 67 interval 2
DHCPOFFER from 192.168.1.257 (00:30:48:8c:50:21)
DHCPREQUEST on x10 to 255.255.255.255 port 67
DHCPACK from 192.1668.1.254 (00:30:48:8c:50:21)
bound to 69.241.244.76 -- renewal in 1800 seconds.
IPv6 address for x10? (or 'rtsol' or 'none') [none] <Enter>
Available network interfaces are: fxp0 x10.
Which one do you wish to configure? (or 'done') [done] <Enter>
Using DNS domainname example.com
Using DNS nameserver at 68.87.77.130 68.87.72.130
Do you want to do any manual network configuration? [no] <Enter>


Im nächsten Schritt wird das Passwort für den Nutzer root festgelegt.

Password for root account? (will not echo) pAssWOrd
Password for root account? (again) pAssWOrd
Start sshd(8) by default? [yes] <Enter>
Start ntpd(8) by default? [no] <Enter>
Do you expect to run the X Window System? [yes] <Enter>
Do you want the X Window System to be started by xdm(1)? [no] <Enter>
Change the default console to com0? [no] <Enter>
Setup a user? (enter a lower-case loginname, or 'no') [no] <Enter>
Since you setup a user, disable sshd(8) logins to root? [yes] <Enter>


Im folgenden Schritt wird die Partitionierung der Festplatte vorgenommen.

Available disks are: wd0
Which one is the root disk? (or 'done') [wd0] <Enter>

Offset: 1312752        Signature: 0xAA55
            Starting          Ending       LBA Info:
 #: id      C   H    S -      C   H   S [     start:       size ]
-------------------------------------------------------------------------------
*0: 0B      0   1    1 -    195 254 63 [         63:    3148677 ] WinXP FAT-32
 1: 00      0   0    0 -      0   0   0 [         0:          0 ] unused
 2: 00      0   0    0 -      0   0   0 [         0:          0 ] unused
 3: 00      0   0    0 -      0   0   0 [         0:          0 ] unused
Offset: 1012095        Signature: 0xAA55
            Starting          Ending       LBA Info:
 #: id      C   H    S -      C   H   S [     start:       size ]

                                 Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
2.5. OpenBSD                                                                        15


 -------------------------------------------------------------------------------
   0: 0B     0    1   1 -    195 254 63 [          63:    3148677 ] OpenBSD
   1: 00     0    0   0 -      0   0   0 [          0:          0 ] unused.....
   2: 00     0    0   0 -      0   0   0 [          0:          0 ] unused.....
   3: 00     0    0   0 -      0   0   0 [          0:          0 ] unused...
 Offset: 12739545        Signature: 0xAA55
             Starting          Ending        LBA Info:
   #: id     C    H   S -      C   H   S [      start:       size ]
 -------------------------------------------------------------------------------
   0: 0B     0    1   1 -    195 254 63 [          63:    3148677 ] Linux
   1: 00     0    0   0 -      0   0   0 [          0:          0 ] unused.....
   2: 00     0    0   0 -      0   0   0 [          0:          0 ] unused.....
   3: 00     0    0   0 -      0   0   0 [          0:          0 ] unused...
 Use (W)hole disk, use the (O)penBSD area, or (E)dit the MBR? [OpenBSD] O
 The auto-allocated layout for wd0 is:
 #                 size           offset fstype [fsize bsize cpg]
    a:           984.5M          1012158 4.2BSD     2048 16384    1 # /
    b:           256.0M          3028435    swap
    c:         76319.1M                0 unused
    d:          3072.0M          3552726 4.2BSD     2048 16384    1 # /usr
    e:          1413.8M          9844182 4.2BSD     2048 16384    1 # /home
    e:           494.2M               63 ext2fs
    j:         70096.1M          12739608 unknown
 Use (A)uto layout, (E)dit auto layout, or create (C)ustom layout? [a] A
 /dev/rwd0a: 984.5MB in 2016280 sectors of 512 bytes
 5 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
 /dev/rwd0e: 1413.8MB in 2895360 sectors of 512 bytes
 7 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
 /dev/rwd0d: 3072.0MB in 6291456 sectors of 512 bytes
 16 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each
 /dev/wd0a on /mnt type ffs (rw, asynchronous, local)
 /dev/wd0e on /mnt/home type ffs (rw, asynchronous, local, nodev, nosuid)
 /dev/wd0d on /mnt/usr type ffs (rw, asynchronous, local, nodev)

 Let's install the sets!
 Location of sets? (cd disk ftp http or 'done') [cd] <Enter>
 Available CD-ROMs are: cd0.
 Which one contains the install media? (or 'done') [cd0] <Enter>
 Pathname to the sets? (or 'done') [4.6/i386] <Enter>

 Select sets by entering a set name, a file name pattern or 'all'. De-select
 sets by prepending a '-' to the set name, file name pattern or 'all'. Selected
 sets are labeled '[x]'.
     [X] bsd             [X] etc46.tgz      [X] game46.tgz     [X] xserv46.tgz
     [X] bsd.rd          [X] misc46.tgz     [X] xbase46.tgz    [ ] site46.tgz
     [X] bsd.mp          [X] comp46.tgz     [X] xetc46.tgz
     [X] base46.tgz      [X] man46.tgz      [X] xshare46.tgz
 Set name(s)? (or 'abort' or 'done') [done] all
     [X] bsd             [X] etc46.tgz      [X] game46.tgz     [X] xserv46.tgz
     [X] bsd.rd          [X] misc46.tgz     [X] xbase46.tgz    [X] site46.tgz
     [X] bsd.mp          [X] comp46.tgz     [X] xetc46.tgz
     [X] base46.tgz      [X] man46.tgz      [X] xshare46.tgz
 Set name(s)? (or 'abort' or 'done') [done] <Enter>
 bsd          100% |***************************************| 6356 KB    00:09 ETA
 bsd.rd       100% |***************************************| 5003 KB    00:03 ETA
 bsd.mp       100% |***************************************| 6401 KB    00:04 ETA
 base46.tgz   100% |***************************************| 42854 KB   00:38 ETA
 etc46.tgz    100% |***************************************| 1190 KB    00:01 ETA
 misc46.tgz   100% |***************************************| 2252 KB    00:02 ETA
 comp46.tgz   100% |***************************************| 77563 KB   01:05 ETA
 man46.tgz    100% |***************************************| 7530 KB    00:08 ETA
 game46.tgz   100% |***************************************| 2547 KB    00:01 ETA


Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
16                                                                                               2. Installation


xbase46.tgz 100%    |***************************************| 9450                 KB     00:08    ETA
xetc46.tgz   100%   |***************************************| 76180                KB     00:00    ETA
xshare46.tgz 100%   |***************************************| 2678                 KB     00:05    ETA
xserv46.tgz 100%    |***************************************| 8543                 KB     00:07    ETA
site46.tgz   100%   |***************************************| 8543                 KB     00:32    ETA
Location of sets?   (cd disk ftp http or 'done') [done] <Enter>

What timezone are you in? ('?' for list) [Europe/Berlin] <Enter>
Saving configuration files...done.
Generating initial host.random file...done.
Making all device nodes...done.
Mulitprocessor machine; using bsd.mp instead of bsd.

***********************************
Installing Anoubis packages
***********************************

==> Installing anoubisd ..
==> Installing xanoubis ..



CONGRATULATIONS! Your OpenBSD install has been successfully completed!
To boot the new system, enter 'reboot' at the command prompt.
When you login to your new system the first time, please read your mail
using the 'mail' command.



Die Installation ist hiermit abgeschlossen. Um in das neue System zu booten geben Sie
am Shell-Prompt das Kommando reboot ein.

# reboot
syncing disks... done


Bei Bedarf kann der Zugriff auf das Device /dev/eventdev zusätzlich weiter einge-
schränkt werden:

chmod 600 /dev/eventdev




2.5.1 Deinstallation
Starten Sie das System neu und geben Sie am Boot-Prompt die folgende Zeile ein.

> boot bsd.mp


Um sowohl den Anoubis-Kernel als auch die Anoubis-Pakete anoubis-daemon und
anoubis-gui sowie die zugehörigen Konfigurationsdateien zu deinstallieren, gehen Sie
- nach dem erfolgten Neustart des Systems - wie folgt vor.

pkg_delete anoubis-gui
pkg_delete daemon
mv /bsd /bsd.anoubis
cp /bsd.GENERIC.UP /bsd



Die Komponenten anoubis-daemon und anoubis-gui greifen auf zusätzliche Dateien
und Pfade zurück, die nicht im Rahmen der Deinstallation der Pakete entfernt werden. Um

                                  Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
2.6. Ubuntu                                                                           17


eine vollständige Deinstallation aller für Anoubis relevanten Bestandteile durchzuführen,
müssen die unter Punkt B.2.1 und B.3 genannten Pfade und Dateien vom System entfernt
werden.
Nach der Deinstallation der Anoubis-Pakete ist ein Reboot des Systems ratsam.



2.6        Ubuntu
Die Anweisungen in diesem Abschnitt gelten sowohl für das Release Ubuntu 9.0.4 “Jaunty
Jackalope” als auch Ubuntu 9.10 “Karmic Koala”. Um das Installieren der Ubuntu-Pakete
- vom lokalen Dateisystem aus - mittels dpkg durchzuführen, kopieren Sie bitte die drei
Pakete (kernel, anoubis und xanoubis) auf Ihr System.
Wechseln Sie nun in das Verzeichnis, das die zuvor heruntergeladenen Pakete beinhaltet.
Die Installation der Anoubis-Pakete kann danach wie folgt durchgeführt werden

 dpkg -i linux-image-2.6.26-anoubis-0.9.2.d023.972.d076_1_i386.deb
 dpkg -i anoubisd_0.9.2.D023.972.D076_i386.deb
 dpkg -i xanoubis_0.9.2.D023.972.D076_i386.deb


Dabei wird durch den Aufruf in der ersten Zeile das Kernel-Paket installiert. Wenn
die default Bootloader-Konfiguration verwendet wird, wird ab dem nächsten Reboot die
Anoubis-Security-Suite aktiviert. Ansonsten muss der neue Kernel noch in →Grub oder
→Lilo konfiguriert werden.
Um die Installation, der von den Anoubis-Paketen benötigten Abhängigkeiten zu ermögli-
chen, geben Sie abschließend den folgenden Befehl ein

 apt-get -f install


Bei Bedarf kann der Zugriff auf das Device /dev/eventdev zusätzlich weiter einge-
schränkt werden:

 chmod 600 /dev/eventdev




2.6.1       Deinstallation
Starten Sie das System neu und booten Sie den jeweiligen Standard-Kernel, der von ihrer
Distribution bereitgestellt wird. Um sowohl das Kernel-Paket als auch die Anoubis-Pakete
(anoubisd und xanoubis) sowie die zugehörigen Konfigurationsdateien zu deinstallie-
ren, gehen Sie - nach dem erfolgten Neustart des Systems - wie folgt vor.
Bestimmen Sie die installierten Anoubis-Pakete mittels des folgenden Kommandos.

 dpkg --get-selections | grep anoubis | awk '{print $1}'


Eine beispielhafte Ausgabe könnte wie folgt aussehen.

 anoubisd
 linux-image-2.6.26-anoubis-0.9.2.d023.972.d133
 xanoubis


Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
18                                                                                               2. Installation


Um die aufgelisteten Pakete zu deinstallieren, gehen Sie wie folgt vor.

dpkg --purge xanoubis
dpkg --purge anoubisd
dpkg --purge linux-image-2.6.26-anoubis-0.9.2.d023.972.d133


Beachten Sie bitte, dass die Anweisung zur Deinstallation des Kernel-Paket den vollstän-
digen Namen (inklusive der Versionsnummer) aufweisen muss. Dieser ist entsprechend
der Ausgabe des oben genannten Kommandos anzupassen.
Die Komponenten anoubisd und xanoubis greifen auf zusätzliche Dateien und Pfade
zurück, die nicht im Rahmen der Deinstallation der Pakete entfernt werden. Um eine voll-
ständige Deinstallation aller für Anoubis relevanten Bestandteile durchzuführen, müssen
die unter Punkt B.2.1 und B.3 genannten Pfade und Dateien vom System entfernt werden.
Nach der Deinstallation der Anoubis-Pakete ist ein Reboot des Systems ratsam.




                                  Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
GUI Ü BERBLICK
• Statusanzeige
• Trayicon
• Navigationsleiste
• Hauptfenster
• Infoleiste
• Werkzeuge
• Benachrichtigungen und
  Anfragen
• Einstellungen
Kapitel 3

GUI Überblick

3.1    Statusanzeige

Wichtige Informationen werden in der Statusanzeige, unabhängig von der aktuell aktiven
Ansicht, links oben dargestellt. Dadurch wird es ermöglicht, jederzeit über Statusänderun-
gen des Systems informiert zu werden.




      Abbildung 3.1: Strukturelle Übersicht der Graphischen Benutzeroberfläche.
                                           .
22                                                                                            3. GUI Überblick


3.2     Navigationsleiste
In der links unterhalb der Statusanzeige angeordneten Navigationsleiste befinden sich
Auswahlfelder, die den Zugriff auf die einzelnen Module von Anoubis ermöglichen. Im Be-
reich Übersicht wird dem Benutzer ein Gesamtüberblick über den Status aller Anoubis-
Module gegeben. Weiterhin ist hier eine direkte Zugriffsmöglichkeit - mittels der Schaltflä-
chen Verbinden und Trennen - gegeben, um sich mit dem anoubisd zu verbinden bzw.
sich von ihm abzumelden. Der Bereich ALF umfasst die vereinfachte Übersicht hinsicht-
lich der Firewallfunktionalität. Im Teil SFS, können Einstellungsmöglichkeiten hinsichtlich
der zu überwachenden Dateien auf dem Rechner vorgenommen werden. Darüberhinaus
ist die vereinfachte Übersicht der aktiven SFS-Regeln dargestellt. Im Bereich SB befin-
det sich die vereinfachte Übersicht der aktiven Sandbox-Regeln. Der Bereich Anoubis
ermöglicht das Arbeiten mit Benachrichtigungen und Anfragen.



3.3     Hauptfenster
Innerhalb der Module SFS und Anoubis erfolgt die Navigation mittels Reitern, die am
oberen Ende des Hauptfensters dargestellt werden. Beispielsweise werden im Modul SFS
innerhalb des Reiters Browser sowohl die Sicht auf das Dateisystem dargestellt als auch
die Verwaltung von Prüfsummen und Signaturen im Kontext des SFS ermöglicht.



3.4     Infoleiste
Die Infoleiste (links unten) stellt verschiedene Informationen zur Aktivität von Anoubis dar.
So wird beispielsweise eine fehlgeschlagene Verbindung zum Anoubis Daemon oder das
Ergebnis beim Laden einer Regeldatei hier dargestellt.



3.5     Werkzeuge
Im rechten unteren Teil des Anoubis-Hauptfensters befinden sich Schaltflächen, die den
direkten Zugriff auf den RuleEditor, LogViewer und den Wizard erlauben. Der RuleE-
ditor ermöglicht hierbei sehr feingranulare Einstellungsmöglichkeiten zu den Regelsätzen
der jeweiligen Anoubis-Module. Im LogViewer werden alle Logmeldungen, Alarme und
Eskalationen zugänglich gemacht. Der Wizard stellt eine Alternative zur Regelerstellung
im RuleEditor dar. Hierbei wird der Benutzer bei der Erstellung von Regeln unterstützt und
begleitet. Alternativ können über die Menüleiste mit Werkzeuge -> LogViewer, Werkzeu-
ge -> RuleEditor oder Werkzeuge -> Wizard diese Fenster aufgerufen werden.



3.6     Trayicon
Zusätzlich zum Hauptfenster der Graphischen Benutzeroberfläche steht ein Trayicon zur
Verfügung. Trayicons sind die kleinen Symbole, die in der Taskleiste, neben der Uhr er-

                                   Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
3.6. Trayicon                                                                      23


scheinen. Diese bieten schnellen und direkten Zugriff auf die GUI. Hierbei werden ab-
hängig vom Status des Trayicons die drei folgenden Fälle - mit abnehmender Priorität -
unterschieden.



3.6.1       Benachrichtigung über offene Nachfragen

Bei bestehenden Eskalationsmeldungen, die eine Nachfrage beim Benutzer erfordern,
erscheint das Trayicon mit einem roten Fragezeichen im Vordergrund. Ein Linksklick der
Maus auf das Symbol führt in diesem Fall direkt in das Fenster zur Beantwortung der
entsprechenden Eskalationen.




3.6.2       Benachrichtigung über Alarme

Bei aufgelaufenen Logmeldungen und Alarmen (Fehlschlagen der Verbindung zum Dae-
mon, nichtgeladene Module) wird das Trayicon mit einem gelben Ausrufezeichen verse-
hen. Ein Linksklick der Maus auf das Symbol öffnet automatisch die Ansicht der Logmel-
dungen im GUI.




3.6.3       Normalzustand

Stehen weder Alarme noch Eskalationen an, so wird das Trayicon ohne weitere farbli-
che Hervorhebung präsentiert. In diesem Zustand führt ein Linksklick der Maus auf das
Symbol zum Umschalten der Sichtbarkeit der GUI. Dies führt bei sichtbarer GUI zum Ver-
bergen des Fensters und im gegenteiligen Fall zur Anzeige dergleichen.




Darüber hinaus kann jederzeit - durch einen Rechtsklick der Maus auf das Symbol - das
Kontextmenü der grafischen Benutzeroberfläche aktiviert werden. Dieses bietet sowohl
eine Option zum Beenden als zum Wiederherstellen der GUI.

Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
24                                                                                          3. GUI Überblick




              Abbildung 3.2: Darstellungsfenster für Benachrichtigungen.
                                           .


3.7    Benachrichtigungen und Anfragen

Wenn eine „ask”-Regel erstellt wurde, entscheidet Anoubis nicht selbst darüber, was Pro-
zesse dürfen und was nicht. Statt dessen erzeugt Anoubis eine Nachfrage, d. h. Anoubis
überlässt dem Benutzer die Entscheidung, ob ein Programm z.B. eine Netzwerkverbin-
dung erstellen darf oder nicht.
Wenn beispielsweise die Applikation Firefox eine „ask”-Regel hat, fragt Anoubis bei je-
der von Firefox aufgebauten Verbindung beim Benutzer nach, ob diese zugelassen oder
verhindert werden soll.


3.7.1 Benachrichtigungen

Im Navigationselement Anoubis erscheint unter dem Reiter Benachrichtigungen (siehe
Abbildung 3.2) ein Drop-Down-Menü mit Auswahlmöglichkeit zu verschiedenen Ansichten
(Aktuelle Anfragen, Benachrichtigungen, Geschlossene Nachfragen, Alle).


Aktuelle Anfragen

Unter Aktuelle Anfragen können die von Anoubis generierten Nachfragen beantwortet
werden. Nachdem über die Dauer der Gültigkeit entschieden wurde, kann mittels der
Schaltflächen erlauben oder verbieten die gewünschte Entscheidung getroffen werden.

                                 Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
3.8. Einstellungen                                                                    25


Sollte der Firefox eine „ask”-Regel haben dann erscheint bei einem Verbindungsaufbau ei-
ne Nachfage. Diese Nachfage beinhaltet einen Informationsteil und einen Einstellungsteil.
Im Einstellungsteil lässt sich die Bedingung zur Gültigkeit präzise festlegen.


Benachrichtigungen

Im Bereich Benachrichtigungen können entstandene Benachrichtigungen betrachtet
werden. Benachrichtigungen werden von Regeln erzeugt, bei denen im Regeleditor un-
ter „Logging” das Attribut normal oder kritisch aktiviert wurde.


Geschlossene Nachfragen

Wenn Geschlossene Nachfragen ausgewählt wurde, kann Einblick in die bereits beant-
worteten Nachfragen genommen werden.


Alle

Hier lassen sich alle Nachrichten darstellen.



3.8        Einstellungen

Der Reiter Einstellungen bietet Zugriff auf die Konfigurationsmöglichkeiten hinsichtlich
des Verhaltens der grafischen Benutzeroberfläche.


3.8.1 Einstellungen zur Esklationsbenachrichtigung

Die Einstellung Sende Eskalationen ermöglicht die Darstellung von Nachfragen in Pop-
Up-Fenstern am rechten unteren Bildschirmrand an- oder auszuschalten. Dabei kann
ebenfalls eingestellt werden, wie lange diese Pop-Up-Fenster geöffnet bleiben sollen.


3.8.2 Einstellungen zur Alarmbenachrichtigung

Mittels der Einstellung Sende Alarme besteht die Möglichkeit, die Darstellung von Alar-
men in Pop-Up-Fenstern am rechten unteren Bildschirmrand an- oder auszuschalten. Hier
kann ebenfalls eingestellt werden, wie lange diese Pop-Up-Fenster geöffnet bleiben sol-
len.


3.8.3 Autostart

Die Aktivierung der Einstellung Autostart registriert die Graphische Benutzeroberfläche
für den automatischen Start unter den Desktopumgebungen KDE und Gnome.

Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
26                                                                                          3. GUI Überblick




                          Abbildung 3.3: Upgrade Dialogbox


3.8.4 RuleEditor
Bei Aktivierung der Einstellung Automatische Prüfsummenüberprüfung werden auto-
matisch alle direkt in einem Regelsatz enthaltenen Prüfsummen vor dem Senden des
Regelsatzes an den Daemon überprüft.


3.8.5 Verbindung
Beim Aktivieren der Einstellung Automatisches Verbinden zum Daemon verbindet sich
die GUI beim Start automatisch mit dem Daemon.


3.8.6 Tool Tips
Wird diese Einstellung aktiviert, so werden dem Benutzer weitergehende Informationen zu
den einzelnen Schaltflächen des GUI angezeigt, wenn der Mauszeiger für die Dauer der
eingestellten Zeit in Sekunden auf diesen verweilt.



3.9    Upgrade Dialogbox
Beim Verbinden mit dem Anoubis Daemon oder nach Abschluss der Installation neuer
Software im Rahmen eins Upgrades wird überprüft, ob Signaturen registriert sind, die
jetzt angepasst werden müssen. Ist dies der Fall wird dem Benutzer eine Dialogbox (siehe
Abbildung 3.3) angezeigt, um ihn auf diese Änderungen hinzuweisen. In diesem Dialog
hat er die Möglichkeit, die Option zum Wiederanzeigen der Dialogbox auszuschalten, den
Dialog ohne weitere Aktionen zu beenden oder den SFS Browser zu öffnen, um dort ein
Update der signierten Prüfsummen vorzunehmen.
Der Dialog wird standardmäßig angezeigt, allerdings höchstens einmal innerhalb von 60
Sekunden. Er kann im Anoubis Main Panel unter der Option Upgrade - Enable Upgrade
Message ausgeschaltet werden. (siehe Abbildung 3.4).
Manche Distributionen installieren im Rahmen eines Upgrades jede Softwarekomponente
einzeln. Wenn dies der Fall ist, kann es vorkommen, dass der Dialog für einen Upgrade
Vorgang mehrmals angezeigt wird.

                                 Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
3.9. Upgrade Dialogbox                                                            27




                   Abbildung 3.4: Ein- bzw. Ausschalten der Upgrade Dialogbox




Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
28                                                                                          3. GUI Überblick


Das Update der signierten Prüfsummen ist wichtig, da sonst auf diese Dateien nicht mehr
zugegriffen werden kann. Diese Zugriffsverweigerung kann die Funktionalität des Systems
beeinträchtigen.




                                 Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
KONFIGURATION
• Allgemein
• Kontexte und
  Kontextwechsel
• Konfiguration ALF
• Konfiguration SFS
• Konfiguration Sandbox
• Schlüssel
• Regelwizard
• Spezielle Hinweise
Kapitel 4

Konfiguration

4.1      Allgemein

Die Konfiguration von Anoubis erfolgt über Policies, die die Berechtigungen für einzelne
Anwendungen enthalten. Zusätzlich kann eine Konfigurationsdatei verwendet werden Für
jeden Nutzer gibt es zwei voneinander unabhängige Regelsätze:

Der Administratorregelsatz mit Priorität 0 Dieser Regelsatz wird vom Administrator
    vorgegeben und kann vom Nutzer nicht verändert werden. Die darin enthaltenen Re-
    geln geben den Rahmen vor innerhalb dessen der Nutzer für einzelne Anwendungen
    noch weitergehende Einschränkungen vornehmen kann.

Der Nutzerregelsatz mit Priorität 1 Dieser Regelsatz steht vollständig unter der Kontrol-
    le des Nutzers selbst. Damit kann dieser Einschränkungen für Anwendungen nach
    seinen persönlichen Vorstellungen festlegen.


4.1.1     anoubisctl

Das Kommandozeilenwerkzeug anoubisctl ermöglicht die manuelle Kontrolle des anou-
bisd.

  • Anzeige des aktiven Regelsatzes
      Der aktuell in Verwendung befindliche Regelsatz lässt sich mittels des folgenden Auf-
      rufs anzeigen:

      anoubisctl dump -


      Hierbei erfolgt die Ausgabe per default auf stdout. Optional kann die Ausgabe aber
      auch direkt in eine Datei geschrieben werden, um sie z. B. später manuell zu editie-
      ren. Der oben genannte Aufruf würde in diesem Fall wie folgt abgeändert:

      anoubisctl dump /path/to/file


      Eine beispielhafte Ausgabe eines aktuellen Regelsatzes sei im Folgenden zur Veran-
      schaulichung angeführt.
32                                                                                              4. Konfiguration



       # Policies for UID 1002 PRIO 1
       apnversion 1.3
       alf {
       3:        any {
       1:                ask connect log tcp from any to any port 22
       2:                default log allow
               }
       }
       sfs {
       }
       sandbox {
       }
       context {
       5:        any {
       4:                context new any
               }
       }


     • Testen und Aktivieren von Regelsatzdateien
      Nachdem Änderungen an einer (zuvor gespeicherten bzw. erstellten) Regelsatzdatei
      vorgenommen wurden, kann diese vor der eigentlichen Aktivierung auf syntaktische
      Korrektheit getestet werden.

       anoubisctl -n -v load /path/to/file


      Die Bedeutung der Optionen ist wie folgt:
      -n teste die Regeln aus der übergebenen Regeldatei, aber aktiviere sie nicht.
      -v ausführliche Ausgabe
      Wenn keine Fehlermeldungen erzeugt wurden, so können die Regeln aus der Datei
      mit dem folgenden Kommando aktiviert werden.

       anoubisctl load /path/to/file


     • Weitere Optionen
      -p admin Ein folgendes load oder dump Kommando bezieht sich auf die Admini-
      stratorregeln statt auf die Nutzerregeln. Für den Administrator ist dies die Voreinstel-
      lung. Im Falle von load ist diese Option nur dem Administrator erlaubt.
      -p user Ein folgendes load oder dump Kommando bezieht sich auf die Nutzerre-
      geln. Für normale Benutzer ist dies die Voreinstellung.
      -u uid Ein folgendes load oder dump bezieht sich auf den angegebenen User und
      nicht auf den Aufrufer des Programms, bei Angabe von -u DEFAULT auf die Default-
      Policies. Diese Option steht nur dem Administrator zur Verfügung.

     • Anzeigen der eigenen Prozesse
      Mit anoubisctl lässt sich auch ermitteln, welche Regelsätze für welche Prozesse aktiv
      sind. Dazu listet das folgende Kommando die Prozesse des aufrufenden Benutzers
      auf.

       anoubisctl ps


                                    Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
4.1. Allgemein                                                                        33


      Zu jedem Prozess werden die verschiedenen Informationen in einer Zeile angezeigt.
      Eine Ausgabe könnte zum Beispiel folgendermaßen aussehen:

       pid=1060 cookie=1628530 alf=15:3 sb=59:0 ctx=49:5 /bin/bash
       pid=1102 cookie=1629191 alf=2:3 sb=6:0 ctx=45:5 secureexec /sbin/anoubisctl


      Die Informationen bedeuten im Einzelnen:
      pid die Prozess-ID des Prozesses
      cookie eine vom anoubisd verwendete, eindeutige ID des Prozesses, welche bis
         zum nächsten Systemstart garantiert nur einmal verwendet wird
      alf die IDs der für den Prozess aktiven ALF-Regelsatzblöcke
      sb die IDs der für den Prozess aktiven Sandbox-Regelsatzblöcke
      ctx die IDs der für den Prozess aktiven Kontext-Regelsatzblöcke
      secureexec Wenn dieses Flag angezeigt wird, wird der Prozess wie Setuid-
         Programme behandelt (ptrace ist eingeschränkt, LD_PRELOAD wird ignoriert).
      name der Pfad- und Dateiname des Programms
      contexts Pfad- und Dateiname der Prozesse, in deren Kontexten das Programm aus-
         geführt wird (wird nur in Verbindung mit -v angezeigt)
      Bei den Feldern alf, sb und ctx wird vor bzw. nach dem Doppelpunkt jeweils
      die ID des aktiven Regelsatzblocks des Admin- bzw. des Benutzer-Regelsatzes
      ausgegeben. Die ID-Nummern finden sich auch in der Ausgabe des Kommandos
      anoubisctl dump und können so den konkreten Regeln zugeordnet werden.
      Analog wird beim Feld contexts vor bzw. nach dem Doppelpunkt der Name derjeni-
      gen Prozesse ausgegeben, in deren Admin- bzw. Benutzer-Kontext der aktuelle Pro-
      zess läuft. Dies wird im Normalfall identisch mit dem Namen des aktuellen Prozesses
      sein, es sei denn, der aufrufende Prozess hatte keine entsprechendecontext new
      Regel.
      Wird die Option -v zweimal angegeben, werden zu den Dateinamen zusätzlich auch
      die Prüfsummen der Programmdateien ausgegeben.
      Mit Hilfe der Option -u kann sich der Root-Benutzer auch die Prozesse von anderen
      Benutzern anzeigen lassen.
      Hinweis: Die Informationen zu Prozessen die gestartet wurden, bevor anoubisd lief,
      können unvollständig sein.
    • Starten und Stoppen des anoubisd
      Des Weiteren ermöglicht anoubisctl die Kontrolle des Anoubis-Daemon mittels der
      folgenden Kommandos:

      anoubisctl start Der Anoubis-Daemon wird gestartet.
      anoubisctl stop Der Anoubis-Daemon wird beendet.
      anoubisctl restart Der Anoubis-Daemon wird neu gestartet. Falls notwendig wird
         der Neustart so lange verzögert, bis ein gerade laufendes Upgrade beendet ist.
      anoubisctl reload Die Konfiguration des Anoubis-Daemon wird neu geladen.
      anoubisctl status Der Status des Anoubis-Daemon wird überprüft und ausgegeben.

Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
34                                                                                             4. Konfiguration


     • Passphrase des privaten Schlüssels von root zur Verfügung stellen
      Wenn der mit Hilfe der rootkey Option des Anoubis-Daemon konfigurierte priva-
      te Schlüssel von root durch eine Passphrase geschützt ist, muss diese dem Anou-
      bis Daemon mitgeteilt werden, bevor ein Upgrade den privaten Schlüssel verwenden
      kann. Dies kann wie folgt geschehen

       anoubisctl passphrase


      Der Benutzer wird dann nach der Passphrase gefragt, und diese wird dem Anoubis-
      Daemon mitgeteilt.

     • Versionsinformationen anzeigen

       anoubisctl version


      Es werden nützliche Versionsinformationen ausgegeben. Dazu gehören die Version
      der Anoubis-Installation, aber auch Versionen von internen Schnittstellen. Im Fehler-
      fall ist die Ausgabe dieses Kommandos von entscheidener Bedeutung!


4.1.2 sfssig

Das Kommandozeilenwerkzeug sfssig dient der Verwaltung von Prüfsummen und Signa-
turen des SFS.
Bei der einfachen Prüfsummenverwaltung können Dateien zum SFS hinzugefügt, mit dem
aktuellen Stand verglichen, aufgelistet und entfernt werden.

     • Hinzufügen
       Das Kommando add fügt dem Prüfsummenbestand eine Datei hinzu.

       $ sfssig add /pfad/zur/datei


     • Validieren (vergleichen)
       Der Prüfsummenbestand und der Ist-Zustand können mit dem Kommando valida-
       te verglichen werden. Stimmen beide miteinander überein, wird Checksum Match
       ausgegeben. Sollten die Prüfsummen nicht übereinstimmen, so wird Checksum
       Missmatch zurück gegeben.

       $ sfssig validate /pfad/zur/datei
       Checksum Match


     • Auflisten
       Die im Prüfsummenbestand zur Überwachung registrierten Dateien können mit dem
       Kommando list ausgegeben werden. Mit Hilfe verschiedener Filteroptionen können
       auch verwaiste Einträge aufgefunden werden.

       $ sfssig list /pfad/zur/
       /pfad/zur/datei1
       /pfad/zur/datei2
       /pfad/zur/datei3


                                   Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
4.1. Allgemein                                                                       35


    • Entfernen
      Ein Eintrag kann aus dem Prüfsummenbestand mit dem Parameter del entfernt wer-
      den.
       $ sfssig del /pfad/zur/datei


    • Export
      Um den eigenen Prüfsummenbestand in eine Datei zu sichern, wird das Kommando
      export verwendet.

       $ sfssig export /pfad/zu/dateien/ > export.sfs


    • Import
      Der gesicherte Prüfsummenbestand kann mit dem Kommando import wieder in anou-
      bis eingepflegt werden.

       $ sfssig import export.sfs



Um diese Kommandos auf Signaturen anzuwenden muss die Kommandozeilenoption
--sig hinzugefügt werden.

 $ sfssig --sig add /pfad/zur/datei



Sollten keine Schlüssel wie im Kapitel 4.7 beschrieben hinterlegt worden sein, so können
diese mittels -k und --cert als Optionen sfssig bekannt gemacht werden.

 $ sfssig -k /pfad/zum/private.key --cert /pfad/zum/pub.crt 
         --sig add /pfad/zur/datei



Um ein Kommando rekursiv auf ein Verzeichnis anzuwenden, wird die Option -r mitgege-
ben.
Filteroptionen können verwendet werden, um ein Kommando auf eine bestimmte Men-
ge an Dateien oder Prüfsummeneinträgen gezielt anzuwenden. Im Folgenden sollen die
einzelnen Filteroptionen erläutert werden.

    • –hassig oder –hassum
      Diese Filteroptionen wenden das Kommando nur auf die Menge an übergebenen Da-
      teien an, die einen Eintrag im Prüfsummenbestand haben. Dabei werden von –hassig
      Einträge mit Signaturen und von –hassum alle nicht signierten Einträge erfasst.

    • –hasnosig oder –hasnosum
      Diese Filteroptionen wenden das Kommando nur auf die Menge von übergebenen
      Dateien an, die keine Einträge im Prüfsummenbestand haben. Die Option –hasnosig
      betrachtet Dateien ohne Signatur, –hasnosum ohne Prüfsumme.

    • –orphaned oder –notfile
      Diese Filteroptionen wenden das Kommando auf Einträge im Prüfsummenbestand
      an, denen entweder keine Dateien oder Verzeichnisse zugeordnet werden können
      (–orphaned), oder keine regulären Dateien sind (–notfile).

Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
36                                                                                               4. Konfiguration


     • –upgraded
       Diese Filteroption ist nur auf Signaturen (–sig) anwendbar. Sie wendet das Komman-
       do auf signierte Einträge an, welche von einem Upgrade Prozess verändert wurden.

Zu den eben beschriebenen Funktionen, ermöglicht sfssig die Verwaltung von System-
Signaturen. System-Signaturen sind Prüfsummen, die in den Extended-Attributes einer
Datei abgelegt werden. Hier durch können auch dann Aussagen über systemkritische
Dateien getroffen werden, bevor der Anoubis-Daemon gestartet wurde.

     • Hinzufügen einer System-Prüfsumme zu einer Datei:
       $ sfssig -A /Pfad/zur/Datei


     • Aktualisieren einer System-Prüfsumme von einer Datei:
       $ sfssig -U /Pfad/zur/Datei


     • Entfernen einer System-Prüfsumme von einer Datei:
       $ sfssig -R /Pfad/zur/Datei


     • Anzeigen einer System-Prüfsumme von einer Datei:
       $ sfssig -L /Pfad/zur/Datei



Extended-Attributes können nur mit Administrator-Rechten verändert werden. Mittels
Extended-Attributes kann dem Kernel aber auch mitgeteilt werden, bestimmte Dateien
bei der Kalkulation von Prüfsummen auszunehmen.

     • Verifikation einer Datei durch den Kernel verhindern:
       $ sfssig -S /Pfad/zur/Datei


     • Verifikation einer Datei durch den Kernel zulassen:
       $ sfssig -C /Pfad/zur/Datei



Weitere Details zu sfssig sind in der Manpage sfssig(8) zu finden.


4.1.3 Playground

Mit dem Kommandozeilenwerkzeug playground lässt sich die Playground-Umgebung von
Anoubis, wie auch mit xanoubis, steuern und verwalten.
Neben dem Starten von Programmen in einem Playground lassen sich aktive und be-
endete Playgrounds (sowie die von ihnen angelegten oder modifizierten Dateien) an-
zeigen, löschen oder in das System übernehmen. Die folgende Beschreibung der play-
ground-Parameter und -Optionen entspricht der zum Programm gehörigen Manpage
playground(8):

     • Ein Programm in einer Playground-Umgebung starten:

                                     Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
4.1. Allgemein                                                                            37



       $ playground start <Kommando> [weitere Optionen]


      Wenn die gestartete Anwendung ein X-Windows Programm ist, dann wird zusätzlich
      die Option -X empfohlen. Diese sorgt dafür, daß die Anwendung in einer isolierten
      X11 Umgebung gestartet wird. Dadurch wird klarer ersichtlich, welche Programme in
      einer Playground-Umgebung laufen und welchen nicht.
      Zum Aufbau der X11-Umgebung wird ein Skript in verwendet, das zusammen mit
      dem xanoubis Paket unter /usr/share/xanoubis/utils/xpgwrapper instal-
      liert wird. Das Skript ist so gestaltet, dass keine weiteren Anpassungen an die lo-
      kalen Gegebenheiten notwenig sind, es kann aber Bedarf durch den Administrator
      editiert werden. Insbesondere kann dort die Displaygröße der X11-Umgebung von
      1024x768x24 auf einen anderen Wert abgeändert werden.

    • Anzeigen aller aktiven oder beendeten Playground-Sitzungen:

       $ playground list


      Beispiel:

       $ playground list
           PGID USER    STATUS FILES                                TIME COMMAND
         1061bc 1000     active    3                 2010-09-08 10:45:07 /usr/bin/xterm
         105c82 1000 inactive      3                 2010-09-07 16:15:36 /bin/bash
         105c7b 1000 inactive      2                 2010-09-07 15:41:38 /bin/bash


      PGID ist die Playground-ID, welche für alle folgenden Kommandos anzugeben ist.
      Der erste Playground in der Liste ist noch aktiv, was bedeutet, dass das Komman-
      do xterm noch nicht beendet wurde. Das hat zur Folge, dass aus diesem Playground
      weder Dateien übernommen noch gelöscht werden können. Entsprechend kann auch
      der gesamte Playground noch nicht gelöscht werden, solange er aktiv ist. Desweite-
      ren können alle folgenden Playground-Kommandos, vom Anzeigen der darin befind-
      lichen Dateien abgesehen, nur auf Playgrounds mit dem Status ’inactive’ angewandt
      werden.

    • Auflistung neuer oder modifizierter Dateien in einem bestimmten Playground:

       $ playground files <Playground ID>


      Beispiel:

       $ playground files 1061bc
           PGID      DEV    INODE              FILE
         1061bc fc00004        1e              /tmp/foo
         1061bc fc00004        20              /tmp/bar
         1061bc fc00004        42              /tmp/another_example



    • Übernehmen von Dateien aus einem Playground:

       $ playground commit [--ignore-recommended] <Playground ID>


Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
38                                                                                             4. Konfiguration


      Die Option –ignore-recommended bzw. -F erlaubt die Übernahme von Dateien trotz
      Warnungen von ’empfohlenen’ (recommended) Inhaltsscannern (Virenscanner bei-
      spielsweise). Ist ein solcher jedoch als required (erforderlich) konfiguriert und gibt
      dieser eine entsprechende Warnung aus, so ist eine Übernahme der gemeldeten Da-
      tei(en) in das System nicht mehr möglich.
      Desweiteren kann man in diesem Zusammenhang die Option -f verwenden, was ein
      Überschreiben der bereits im System vorhandenen Dateien erlaubt.
      Für das folgende Beispiel wurde der erste Playground aus der Liste zuerst beendet,
      d.h. das xterm Terminal-Programm geschlossen, womit der Playground nicht mehr
      als aktiv geführt wird. Nun versuchen wir die Datei /tmp/foo in das System zu über-
      nehmen:
       $ playground commit 1061bc /tmp/foo
       $ ls /tmp/foo
       /tmp/foo


      Das commit-Kommando hat in diesem Beispiel keine Fehlermeldung ausgegeben,
      was bedeutet, dass die Übernahme von /tmp/foo erfolgreich war. Dies sieht man auch
      daran, dass der darauf folgende Aufruf des ls-Kommandos die Datei als im System
      vorhanden darstellt.
     • Löschen einzelner Dateien aus einer Playground-Sitzung:
       $ playground delete <Playground ID> <Dateiname> ...


      Im nächsten Beispiel soll eine einzelne Datei aus dem selben Playground entfernt
      werden:
       $ playground delete 1061bc /tmp/another_example
        UNLINKED /tmp/another_example


      Wie man aus der UNLINKED-Meldung entnehmen kann, war auch dies erfolgreich.
      Würde man nun die Dateien dieser Playground-Sitzung erneut auflisten, so wäre nur
      noch die Datei /tmp/bar vorhanden.
      Es können Fälle auftreten, bei denen sich zwar Dateien und Verzeichnisse in einem
      Playground befinden, sie aber nicht mehr physikalisch existieren. Solche Situationen
      entstehen, wenn Playgrounds Dateien referenzieren, die auf nicht-persistenten Datei-
      systemen (wie zum Beispeil tmpfs) gespeichert werden. Nach einem Reboot gehen
      diese Dateien verloren. Um diese Dateien trotzdem aus einem Playground löschen
      zu können, kann das delete-Kommando mit der Option -f aufgerufen werden. Jetzt
      erwartet das Kommando keinen Dateinamen mehr sondern das Device- und Inode-
      Paar (getrennt durch einen Doppelpunkt):

       $ playground -f delete 1061bc fc00004:42
        UNLINKED fc00004:42


     • Löschen eines gesamten Playgrounds:
       $ playground remove <Playground ID>


      Beispiel:

                                   Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
4.2. Kontexte und Kontextwechsel                                                         39



       $ playground remove 1061bc
        UNLINKED /tmp/bar
       $ playground list
           PGID USER    STATUS FILES                                TIME COMMAND
         105c82 1000 inactive      3                 2010-08-10 16:15:36 /bin/bash
         105c7b 1000 inactive      2                 2010-08-10 15:41:38 /bin/bash


      Wie man anhand der Ausgabe beider Befehle in dem obigen Beispiel sehen kann,
      wurde zuerst der Inhalt des Playgrounds, also die Datei /tmp/foo, gelöscht und an-
      schlie¨ end die gesamte Playground-Sitzung aus der Liste ausgetragen.
            s
      Ferner unterstützt das playground-Kommandozeilenwerkzeug, wie anoubisctl und
      sfssig die Optionen -h, um die möglichen Optionen und Kommandos (bzw. deren
      Syntax) anzuzeigen, sowie -k und -c, um alternative Schlüssel oder Zertifikate ver-
      wenden zu können.
      Analog zum delete-Kommando kann auch hier die Option -f angegeben werden. So-
      mit kann ein Playground gelöscht werden, obwohl der Dateien enthällt, die nicht mehr
      referenziert werden können.



4.2        Kontexte und Kontextwechsel
Regeln für den Kontextwechsel legen fest, welche Regeln aktiv werden, wenn ein Pro-
gramm (mit Hilfe des Systemaufrufs exec(2)) eine andere Anwendung ausführt.


4.2.1 Grundlagen
Die Sandbox-, ALF- und Kontext-Regeln in einem Regelsatz bestehen aus einer Reihe
von Blöcken. Jeder Block gilt für eine oder mehrere Anwendungen und enthält einen Satz
von Regeln. Der Kontext einer Anwendung besteht aus dem Pfad eines ausführbaren Pro-
gramms und der zugehörigen Prüfsumme. Er entscheidet in den Modulen ALF und Sand-
box sowie wiederum bei den Regeln für Kontextwechsel, welcher Regelblock für diese
Anwendung aktiv ist.
Um die Regeln für eine Anwendung zu finden, wird für jedes der drei Module (ALF, Sand-
box und Kontext) der erste Block gesucht, der in seiner Liste von Anwendungen den aktu-
ell gültigen Kontext enthält. Ein spezieller Block, der mit „any” gekennzeichnet wird, findet
Anwendung, wenn in einem Modul kein anderer Block vorhanden ist, der zum aktuellen
Kontext passt.
Kontext-Regeln legen fest, ob beim Ausführen eines Programms der Kontext des Pro-
zesses beibehalten wird, oder ob Pfad und Prüfsumme des ausgeführten Programms als
Kontext übernommen werden.
Der Kontext eines ausgeführten Programms muss also nicht notwendigerweise mit
den Daten des ausgeführten Programms übereinstimmen.


4.2.2 Aufbau von Kontext-Regeln
Regeln für den Kontextwechsel sind wie folgt aufgebaut:

Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
40                                                                                          4. Konfiguration



context {
        { app } flags {
                context new { app }
                context new any
        }
}



Die Bedeutung der einzelnen Komponenten ist dabei wie folgt:
 alf             Ein Schlüsselwort, das den ALF-Regelblock einleitet.
 { app }         Eine Liste von Applikationen. Jede Applikation besteht aus ei-
                 nem absoluten Pfadnamen. Zusätzlich kann angegeben wer-
                 den, dass nicht der Pfadname sondern eine unter diesem Pfad-
                 namen hinterlegte (signiert oder unsignierte) Prüfsumme zur
                 Identifikation der Applikation verwendet werden soll. Mehre-
                 re Applikationen werden durch Komma voneinander getrennt.
                 Statt einer Liste von Applikationen, kann auch das spezielle
                 Schlüsselwort „,any” verwendet werden.
 context new     Leitet eine Kontext-Regel ein.
 any             Ein Schlüsselwort, das statt einer Liste von Anwendungen ver-
                 wendet werden kann, um eine Aussage über alle Anwendun-
                 gen zu treffen.
 flags           Mit Hilfe von zwei zusätzliche Flags können besondere Ei-
                 genschaften für Programme aktiviert werden, die mit diesem
                 Kontext laufen: Das Flag nosfs bewirkt, dass Zugriff dieses
                 Prozesses auf das Dataisystem nicht den SFS-Regeln unter-
                 liegen. Das Flag pgforce erzwingt einen neuen Playground
                 für den Prozess, falls dieser nicht bereits in einem Playground
                 läuft.

Eine Liste von Applikationen kommt in Kontextregeln an zwei verschiedenen Stellen in
ganz unterschiedlicher Bedeutung vor:

Unmittelbar vor einem Block Hier geben die Anwendungen in der Liste an, für welche
   Kontexte dieser Block gilt.

In einer context new Regel Hier enthält die Liste alle Anwendungen, bei deren Ausfüh-
     rung ein neuer Kontext mit den Daten der Anwendung geöffnet wird. Wenn für eine
     ausgeführte Anwendung keine Regel zutrifft, dann wird der aktive Kontext des aus-
     geführten Programms beibehalten.


4.2.3 Spezielle Kontextwechsel
In einigen speziellen Fällen ist es nicht nur beim Ausführen eines Programms sinnvoll
einen Kontextwechsel durchzuführen, sondern auch dann, wenn bestimmte Dateien (in
der Regel Shared Libraries) geöffnet werden.
Das kann über besondere Kontext-Regeln erreicht werden. Sie unterscheiden sich von ei-
ner normalen Kontextregel dadurch, dass das Schlüsselwort new durch das Schlüsselwort
open ersetzt wird.

                                Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
4.3. ALF                                                                                            41


Allerdings erfordert der sichere Umgang mit dieser Art von Kontext-Regeln eine gewisse
Sorgfalt und birgt die Gefahr, dass ungewollte Effekte entstehen können. Daher sollten
diese Regeln nur dann eingesetzt werden, wenn sie unbedingt notwendig sind.



4.3        ALF
Die Konfiguration der ALF geschieht über Policies mit folgendem Aufbau:

 alf {
            { app } [ pgonly ] {
                    action operation [log|alert] [family] protocol 
                            from address [port x] to address [port x]
                    action [log|alert] capability
                    default [log|alert] action
            }
 }



Die einzelnen Komponenten haben folgende Bedeutung:

     app                             Die Anwendung (siehe A.2.2), für die die Regel gelten soll. Hier
                                     kann „any” bzw. ein Pfad mit Prüfsumme angegeben werden.
                                     Wird das optionale Flag pgonly angegeben, dann wird die-
                                     ser Regelblock nur verwendet, wenn die Anwendung in einem
                                     Playground läuft.
 action                              Die Aktion, die beim Zutreffen der Regel ausgeführt werden
                                     soll. Mögliche Aktionen sind allow (Zulassen der Verbindung),
                                     deny (Unterbinden der Verbindung) und ask (Nachfrage an
                                     den Benutzer).
 operation                           Netzwerkoperation, auf die die Regel zutreffen soll. Mögliche
                                     Operationen sind send (Senden von Datenpaketen), receive
                                     (Empfangen von Datenpaketen), connect (Aufbauen von Ver-
                                     bindungen (TCP/SCTP)) und accept (Annehmen von Verbin-
                                     dungen (TCP/SCTP)).
 log, alert (optional)               Optionale Schlüsselwörter mit der Bedeutung, dass das Zutref-
                                     fen der Regeln mitprotokolliert werden soll. „alert” hat hierbei
                                     eine höhere Priorität als „log”.
 capability                          Angabe, ob die Regel Zugriff auf privilegierte Sockets haben
                                     soll. Mögliche Werte sind raw (RAW Socket), other (andere
                                     Sockets) und all (alle Sockets). In der Regel muss die An-
                                     wendung zusätzlich über Root-Rechte verfügen.
 family (optional)                   Angabe der Adressfamilie, auf die die Regel zutreffen soll.
                                     Mögliche Adressfamilien sind inet für IPv4 und inet6 für
                                     IPv6.
 protocol                            Angabe des IP-Protokolls, auf das die Regel zutreffen soll.
                                     Mögliche Protokolle sind tcp, udp und sctp.
 from                                Schlüsselwort, auf das die Angabe einer Absenderinformation
                                     folgt.


Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
42                                                                                               4. Konfiguration



 to                       Schlüsselwort, auf das die Angabe einer Empfängerinformati-
                          on folgt.
 address                  Adressangabe für Absender- und Empfängerinformation. Es
                          wird die übliche Darstellung der gewählten Adressfamilie ge-
                          nutzt, z.B. 127.0.0.1 (IPv4) oder 127::1 (IPv6). Statt einer ein-
                          zelnen Adresse ist auch die Angabe eines Netzwerks mit Hilfe
                          von Netzmasken zulässig.
 port x                   Angabe des Netzwerkports für Absender- und Empfängerinfor-
                          mation. Der gültige Wertebereich ist 0 bis 65535.
 default                  Schlüsselwort, das eine Default-Regel angibt. Diese Regel
                          wird ausgewählt, wenn keine andere Regel zutrifft.


Im folgenden Beispielsregelsatz (gültig in jedem Kontext) werden Verbindungen zu ei-
nem Webserver (192.168.0.10) mit Protokollierung zugelassen, Verbindungen zu einem
SSH-Server (192.168.0.200) abgelehnt, aber SSH-Verbindungen zu allen anderen Com-
putern in dem Subnetz 192.168.0.0/24 zugelassen. Weiterhin können DNS-Anfragen an
den DNS-Server 192.168.0.1 gestellt und die Antworten empfangen werden. Ein anderer
Computer mit der IPv6-Adresse fe80::200:12ff:fe34:5678 darf SSH-Verbindungen auf den
lokalen Rechner aufbauen. Sollte keine der vorherigen Regeln zutreffen, wird der Netz-
werkverkehr unterbunden und ein Protokolleintrag erzeugt.

alf {
          any {
                  allow connect log inet tcp from any to 192.168.0.10 port 80
                  deny connect inet tcp from any to 192.168.0.200 port 22
                  allow connect inet tcp from any to 192.168.0.0/24 port 22
                  allow send inet udp from any to 192.168.0.1 port 53
                  allow receive inet udp from 192.168.0.1 to any port 53
                  allow accept log inet6 from 
                          fe80:0000:0000:0000:0200:12ff:fe34:5678 to any port 22

                  default log deny
          }
}




4.4     SFS
Das Modul SFS bietet jedem Nutzer die Möglichkeit, Prüfsummen zu Dateien in einer vom
System verwalteten Datenbank einzutragen. Diese Prüfsummen können optional signiert
werden, wenn der Administator den öffentlichen Schlüssel des Nutzers im System hinter-
legt hat.
Diese Prüfsummen können genutzt werden, um den Zugriff mit Hilfe von SFS-Regeln
einzuschränken. Die dazu verwendeten SFS-Regeln sind wie folgt aufgebaut:

sfs {
          path subject valid action invalid action unknown action
          default path action
}


                                     Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
4.4. SFS                                                                          43


Die Bedeutung der einzelnen Komponenten ist dabei wie folgt:




Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
44                                                                                              4. Konfiguration



     sfs                 Ein Schlüsselwort, das den SFS-Regelblock einleitet.
     path                Entweder das spezielle Schlüsselwort „any” für „ein beliebiger
                         Pfad” oder das Schlüsselwort „path” gefolgt von einem Pfad-
                         präfix, das den Gültigkeitsbereich der Regel auf Dateien unter-
                         halb dieses Pfades einschränkt.
     subject             Dieser Teil einer Regel gibt an, welche Prüfsumme für die Re-
                         gel herangezogen werden soll. Die folgenden Möglichkeiten
                         stehen zur Verfügung:
                            • „self”: Eine vom Nutzer selbst hinterlegte unsignierte
                              Prüfsumme.
                            • „self-signed”: Eine vom Nutzer selbst hinterlegte si-
                              gnierte Prüfsumme
                            • „uid 4711”: Eine vom Nutzer mit der User-ID 4711 hin-
                              terlegte unsignierte Prüfsumme.
                            • „key d5ab3...abcd”: Eine durch einen Schlüssel mit
                              der angegebenen Key-ID signierte Prüfsumme.

     valid action        Die Aktion wird angewandt, falls die Prüfsumme zum Inhalt der
                         Datei passt.
     invalid action      Die Aktion wird angewandt, falls die Prüfsumme nicht zum In-
                         halt der Datei passt.
     unknown action      Die Aktion wird angewandt, falls keine geeignete Prüfsumme
                         im System gefunden wurde.
     action              Eine Aktion besteht aus einer optionalen Anweisung, mit der
                         eine Logmeldung erzeugt werden kann („log” oder „alert”)
                         und der eigentlichen Aktion. Mögliche Aktionen sind:
                            • „allow” Zugriff erlauben
                            • „deny” Zugriff verbieten
                            • „ask” Beim Nutzer rückfragen
                            • „continue” Keine Entscheidung. Die Auswertung wird
                              mit der nächsten Regel fortgesetzt.

     „default”           Schlüsselwort, das eine Default-Regel kennzeichnet. Default-
                         Regeln enthalten lediglich ein Pfadpräfix und eine Aktion. Eine
                         Prüfsumme ist nicht notwendig. Eine Default-Regel findet nur
                         Anwendung, wenn keine andere SFS-Regel anwendbar ist.


Ein Beispiel für einen SFS-Regelsatz könnte wie folgt aussehen:

sfs {
            default path / ask
            path /tmp valid log allow invalid allow unknown allow
            path /etc uid 0 valid allow invalid log deny unknown ask

                                    Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de
Handbuch de

Mais conteúdo relacionado

Mais procurados

Creation ii v0.93 vorläufig
Creation ii v0.93 vorläufigCreation ii v0.93 vorläufig
Creation ii v0.93 vorläufigmarkktoo
 
Team Oldenburger Robo-Fußball – Abschlussbericht der Projektgruppe 2010
Team Oldenburger Robo-Fußball – Abschlussbericht  der Projektgruppe  2010Team Oldenburger Robo-Fußball – Abschlussbericht  der Projektgruppe  2010
Team Oldenburger Robo-Fußball – Abschlussbericht der Projektgruppe 2010Johannes Diemke
 
Test Management Software Benutzerhandbuch
Test Management Software BenutzerhandbuchTest Management Software Benutzerhandbuch
Test Management Software BenutzerhandbuchTest Management
 
Benutzerhandbuch Zeta Producer 9 CMS
Benutzerhandbuch Zeta Producer 9 CMSBenutzerhandbuch Zeta Producer 9 CMS
Benutzerhandbuch Zeta Producer 9 CMSUwe Keim
 
Numerische Methoden: Approximation und Integration
Numerische Methoden: Approximation und IntegrationNumerische Methoden: Approximation und Integration
Numerische Methoden: Approximation und IntegrationRoland Bruggmann
 
Homepage erstellen Benutzerhandbuch
Homepage erstellen BenutzerhandbuchHomepage erstellen Benutzerhandbuch
Homepage erstellen BenutzerhandbuchHomepageErstellen
 

Mais procurados (12)

Laz Infos Svn0082
Laz Infos Svn0082Laz Infos Svn0082
Laz Infos Svn0082
 
Dsvdoc
DsvdocDsvdoc
Dsvdoc
 
Userhandbuch
UserhandbuchUserhandbuch
Userhandbuch
 
Creation ii v0.93 vorläufig
Creation ii v0.93 vorläufigCreation ii v0.93 vorläufig
Creation ii v0.93 vorläufig
 
Team Oldenburger Robo-Fußball – Abschlussbericht der Projektgruppe 2010
Team Oldenburger Robo-Fußball – Abschlussbericht  der Projektgruppe  2010Team Oldenburger Robo-Fußball – Abschlussbericht  der Projektgruppe  2010
Team Oldenburger Robo-Fußball – Abschlussbericht der Projektgruppe 2010
 
Test Management Software Benutzerhandbuch
Test Management Software BenutzerhandbuchTest Management Software Benutzerhandbuch
Test Management Software Benutzerhandbuch
 
User manual
User manualUser manual
User manual
 
Benutzerhandbuch Zeta Producer 9 CMS
Benutzerhandbuch Zeta Producer 9 CMSBenutzerhandbuch Zeta Producer 9 CMS
Benutzerhandbuch Zeta Producer 9 CMS
 
Numerische Methoden: Approximation und Integration
Numerische Methoden: Approximation und IntegrationNumerische Methoden: Approximation und Integration
Numerische Methoden: Approximation und Integration
 
Homepage erstellen Benutzerhandbuch
Homepage erstellen BenutzerhandbuchHomepage erstellen Benutzerhandbuch
Homepage erstellen Benutzerhandbuch
 
Handbuch
HandbuchHandbuch
Handbuch
 
Msrbas
MsrbasMsrbas
Msrbas
 

Destaque

La rt2012
La rt2012La rt2012
La rt2012Ethesia
 
Tasp, Test & treat : Vers la fin de l'épidémie ?
Tasp, Test & treat : Vers la fin de l'épidémie ?Tasp, Test & treat : Vers la fin de l'épidémie ?
Tasp, Test & treat : Vers la fin de l'épidémie ?Christian Andreo
 
Cambios y resistencia
Cambios y resistenciaCambios y resistencia
Cambios y resistenciacrownred
 
Carta de 8 ex secretarios de energía al Gobierno
Carta de 8 ex secretarios de energía al GobiernoCarta de 8 ex secretarios de energía al Gobierno
Carta de 8 ex secretarios de energía al GobiernoForo Blog
 
Brumunddal Og Moelv..Bystatus
Brumunddal Og Moelv..BystatusBrumunddal Og Moelv..Bystatus
Brumunddal Og Moelv..BystatusPer Eivind
 
Dengue formação serviço
Dengue formação serviçoDengue formação serviço
Dengue formação serviçoGuilherme Faria
 
Fr outil 7 compte rendu photos tests bottes de paille
Fr outil 7 compte rendu photos tests bottes de pailleFr outil 7 compte rendu photos tests bottes de paille
Fr outil 7 compte rendu photos tests bottes de paillelibnam
 

Destaque (9)

La rt2012
La rt2012La rt2012
La rt2012
 
Tasp, Test & treat : Vers la fin de l'épidémie ?
Tasp, Test & treat : Vers la fin de l'épidémie ?Tasp, Test & treat : Vers la fin de l'épidémie ?
Tasp, Test & treat : Vers la fin de l'épidémie ?
 
Mango Cabs
Mango CabsMango Cabs
Mango Cabs
 
Cambios y resistencia
Cambios y resistenciaCambios y resistencia
Cambios y resistencia
 
Carta de 8 ex secretarios de energía al Gobierno
Carta de 8 ex secretarios de energía al GobiernoCarta de 8 ex secretarios de energía al Gobierno
Carta de 8 ex secretarios de energía al Gobierno
 
Brumunddal Og Moelv..Bystatus
Brumunddal Og Moelv..BystatusBrumunddal Og Moelv..Bystatus
Brumunddal Og Moelv..Bystatus
 
Dengue formação serviço
Dengue formação serviçoDengue formação serviço
Dengue formação serviço
 
Fr outil 7 compte rendu photos tests bottes de paille
Fr outil 7 compte rendu photos tests bottes de pailleFr outil 7 compte rendu photos tests bottes de paille
Fr outil 7 compte rendu photos tests bottes de paille
 
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job? Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
 

Semelhante a Handbuch de

Master thesis pascal_mueller01
Master thesis pascal_mueller01Master thesis pascal_mueller01
Master thesis pascal_mueller01guest39ce4e
 
Algorithmen und Applikationen zur interaktiven Visualisierung und Analyse ch...
Algorithmen und Applikationen zur interaktiven  Visualisierung und Analyse ch...Algorithmen und Applikationen zur interaktiven  Visualisierung und Analyse ch...
Algorithmen und Applikationen zur interaktiven Visualisierung und Analyse ch...Frank Oellien
 
C++ Standard Template Library
C++ Standard Template LibraryC++ Standard Template Library
C++ Standard Template Libraryguestfc11c0c
 
Website erstellen-mit-desktop-cms-benutzerhandbuch-zeta-producer-10
Website erstellen-mit-desktop-cms-benutzerhandbuch-zeta-producer-10Website erstellen-mit-desktop-cms-benutzerhandbuch-zeta-producer-10
Website erstellen-mit-desktop-cms-benutzerhandbuch-zeta-producer-10Hoempagecms
 
Website erstellen-mit-desktop-cms-benutzerhandbuch-zeta-producer-10
Website erstellen-mit-desktop-cms-benutzerhandbuch-zeta-producer-10Website erstellen-mit-desktop-cms-benutzerhandbuch-zeta-producer-10
Website erstellen-mit-desktop-cms-benutzerhandbuch-zeta-producer-10Websitecms
 
Final Opentrans 2.0 Rfq
Final Opentrans 2.0   RfqFinal Opentrans 2.0   Rfq
Final Opentrans 2.0 Rfqguest6f1fb4
 
Maven Definitive Guide De
Maven Definitive Guide DeMaven Definitive Guide De
Maven Definitive Guide Debouchri
 
Handbuch CONSIDEO Modeler V 5.0
Handbuch CONSIDEO Modeler V 5.0Handbuch CONSIDEO Modeler V 5.0
Handbuch CONSIDEO Modeler V 5.0Detlef Kahrs
 
lernOS Prozessmodellierung Guide (Version 1.0)
lernOS Prozessmodellierung Guide (Version 1.0)lernOS Prozessmodellierung Guide (Version 1.0)
lernOS Prozessmodellierung Guide (Version 1.0)Cogneon Akademie
 
Large Scale Multilayer Perceptron
Large Scale Multilayer PerceptronLarge Scale Multilayer Perceptron
Large Scale Multilayer PerceptronSascha Jonas
 
Best Practice Guide
Best Practice GuideBest Practice Guide
Best Practice Guideguestc141a6
 

Semelhante a Handbuch de (20)

Mocek Thesis
Mocek ThesisMocek Thesis
Mocek Thesis
 
Master thesis pascal_mueller01
Master thesis pascal_mueller01Master thesis pascal_mueller01
Master thesis pascal_mueller01
 
Algorithmen und Applikationen zur interaktiven Visualisierung und Analyse ch...
Algorithmen und Applikationen zur interaktiven  Visualisierung und Analyse ch...Algorithmen und Applikationen zur interaktiven  Visualisierung und Analyse ch...
Algorithmen und Applikationen zur interaktiven Visualisierung und Analyse ch...
 
C++ Standard Template Library
C++ Standard Template LibraryC++ Standard Template Library
C++ Standard Template Library
 
Website erstellen-mit-desktop-cms-benutzerhandbuch-zeta-producer-10
Website erstellen-mit-desktop-cms-benutzerhandbuch-zeta-producer-10Website erstellen-mit-desktop-cms-benutzerhandbuch-zeta-producer-10
Website erstellen-mit-desktop-cms-benutzerhandbuch-zeta-producer-10
 
Website erstellen-mit-desktop-cms-benutzerhandbuch-zeta-producer-10
Website erstellen-mit-desktop-cms-benutzerhandbuch-zeta-producer-10Website erstellen-mit-desktop-cms-benutzerhandbuch-zeta-producer-10
Website erstellen-mit-desktop-cms-benutzerhandbuch-zeta-producer-10
 
Dsvdoc
DsvdocDsvdoc
Dsvdoc
 
Dsvdoc
DsvdocDsvdoc
Dsvdoc
 
Dsvdoc
DsvdocDsvdoc
Dsvdoc
 
Final Opentrans 2.0 Rfq
Final Opentrans 2.0   RfqFinal Opentrans 2.0   Rfq
Final Opentrans 2.0 Rfq
 
Maven Definitive Guide De
Maven Definitive Guide DeMaven Definitive Guide De
Maven Definitive Guide De
 
Handbuch CONSIDEO Modeler V 5.0
Handbuch CONSIDEO Modeler V 5.0Handbuch CONSIDEO Modeler V 5.0
Handbuch CONSIDEO Modeler V 5.0
 
lernOS Prozessmodellierung Guide (Version 1.0)
lernOS Prozessmodellierung Guide (Version 1.0)lernOS Prozessmodellierung Guide (Version 1.0)
lernOS Prozessmodellierung Guide (Version 1.0)
 
[DE] Dr. Ulrich Kampffmeyer - Artikel auf Wikipedia | 2015
[DE] Dr. Ulrich Kampffmeyer - Artikel auf Wikipedia | 2015[DE] Dr. Ulrich Kampffmeyer - Artikel auf Wikipedia | 2015
[DE] Dr. Ulrich Kampffmeyer - Artikel auf Wikipedia | 2015
 
Large Scale Multilayer Perceptron
Large Scale Multilayer PerceptronLarge Scale Multilayer Perceptron
Large Scale Multilayer Perceptron
 
Best Practice Guide
Best Practice GuideBest Practice Guide
Best Practice Guide
 
Dsvdoc
DsvdocDsvdoc
Dsvdoc
 
Dsvdoc
DsvdocDsvdoc
Dsvdoc
 
Dsvdoc
DsvdocDsvdoc
Dsvdoc
 
Dsvdoc
DsvdocDsvdoc
Dsvdoc
 

Handbuch de

  • 2. Urheberrecht ©2007–2011 GeNUA Gesellschaft für Netzwerk- und Unix–Administration mbH. Alle Rechte vorbehalten.
  • 3. • Einführung • Installation • GUI Überblick • Konfiguration • Betrieb • Logging • Fehlerbehandlung • Anhang • Glossar
  • 4.
  • 5. Inhaltsverzeichnis 1 Einführung 3 1.1 Anoubis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.1.1 Einleitung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.1.2 Was ist Anoubis? . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.2 Über dieses Handbuch . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.2.1 Terminologien und Abkürzungen . . . . . . . . . . . . . . . . . . . 4 1.2.2 Die Gliederung des Handbuchs . . . . . . . . . . . . . . . . . . . 5 2 Installation 9 2.1 Allgemein . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.1.1 Empfohlene Systemkonfiguration . . . . . . . . . . . . . . . . . . 9 2.2 Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.2.1 Deinstallation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.3 Fedora . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.3.1 Deinstallation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.4 OpenSuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.4.1 Deinstallation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.5 OpenBSD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.5.1 Deinstallation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 2.6 Ubuntu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.6.1 Deinstallation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 3 GUI Überblick 21 3.1 Statusanzeige . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.2 Navigationsleiste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.3 Hauptfenster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.4 Infoleiste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.5 Werkzeuge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.6 Trayicon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.6.1 Benachrichtigung über offene Nachfragen . . . . . . . . . . . . . 23 3.6.2 Benachrichtigung über Alarme . . . . . . . . . . . . . . . . . . . . 23 3.6.3 Normalzustand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
  • 6. vi INHALTSVERZEICHNIS 3.7 Benachrichtigungen und Anfragen . . . . . . . . . . . . . . . . . . . . . . 24 3.7.1 Benachrichtigungen . . . . . . . . . . . . . . . . . . . . . . . . . . 24 3.8 Einstellungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 3.8.1 Einstellungen zur Esklationsbenachrichtigung . . . . . . . . . . . 25 3.8.2 Einstellungen zur Alarmbenachrichtigung . . . . . . . . . . . . . . 25 3.8.3 Autostart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 3.8.4 RuleEditor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 3.8.5 Verbindung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 3.8.6 Tool Tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 3.9 Upgrade Dialogbox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 4 Konfiguration 31 4.1 Allgemein . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 4.1.1 anoubisctl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 4.1.2 sfssig . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 4.1.3 Playground . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 4.2 Kontexte und Kontextwechsel . . . . . . . . . . . . . . . . . . . . . . . . 39 4.2.1 Grundlagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 4.2.2 Aufbau von Kontext-Regeln . . . . . . . . . . . . . . . . . . . . . . 39 4.2.3 Spezielle Kontextwechsel . . . . . . . . . . . . . . . . . . . . . . . 40 4.3 ALF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 4.4 SFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 4.4.1 Behandlung von symbolischen Links . . . . . . . . . . . . . . . . 45 4.4.2 SFS-Ausnahmen für einzelne Anwendungen . . . . . . . . . . . . 45 4.5 Sandbox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 4.6 Version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 4.7 Schlüssel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 4.8 Regelwizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 4.9 anoubisd.conf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 4.9.1 Unixsocket . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 4.9.2 Upgradeoptionen . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 4.9.3 Authentisierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 4.9.4 Inhaltsscanner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 4.9.5 Sonstige Optionen . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 4.10 Spezielle Hinweise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 4.10.1 .xanoubis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 4.10.2 nscd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 4.10.3 System-V IPC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 7. INHALTSVERZEICHNIS vii 5 Betrieb 59 5.1 Anzeigen und Beantworten von Eskalationen . . . . . . . . . . . . . . . . 59 5.1.1 Benachrichtigung über offene Eskalationen . . . . . . . . . . . . . 59 5.1.2 Anzeigen und Entscheiden von Eskalationen . . . . . . . . . . . . 59 5.2 Regelwizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 5.2.1 Regelkonfiguration einer Anwendung mit dem Regelwizard . . . . 60 5.3 LogViewer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 5.4 RuleEditor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 5.4.1 Bearbeiten von Regeln . . . . . . . . . . . . . . . . . . . . . . . . 72 5.4.2 Administratorregeln . . . . . . . . . . . . . . . . . . . . . . . . . . 73 5.4.3 Speichern und Aktivieren . . . . . . . . . . . . . . . . . . . . . . . 74 5.5 Applikationsregeln . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 5.5.1 Regeleditor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 5.5.2 Der Prozessbrowser . . . . . . . . . . . . . . . . . . . . . . . . . . 76 5.6 ALF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 5.6.1 Überblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 5.6.2 RuleEditor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 5.7 SFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 5.7.1 Überblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 5.7.2 RuleEditor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 5.7.3 Einführung in den SFS-Browser . . . . . . . . . . . . . . . . . . . 80 5.7.4 Schlüssel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 5.7.5 Prüfsumme validieren . . . . . . . . . . . . . . . . . . . . . . . . . 82 5.7.6 Prüfsumme anzeigen . . . . . . . . . . . . . . . . . . . . . . . . . 82 5.7.7 Prüfsumme hinzufügen . . . . . . . . . . . . . . . . . . . . . . . . 83 5.7.8 Prüfsumme entfernen . . . . . . . . . . . . . . . . . . . . . . . . . 84 5.7.9 Erweiterte Operationen . . . . . . . . . . . . . . . . . . . . . . . . 84 5.8 Sandbox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 5.8.1 Überblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 5.8.2 RuleEditor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 5.9 Playground . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 5.9.1 Grundlagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 5.9.2 Manuelles Starten von Applikationen im Playground . . . . . . . . 86 5.9.3 Regelbasiertes Starten von Applikationen im Playground . . . . . 88 5.9.4 Arbeiten in Playgrounds . . . . . . . . . . . . . . . . . . . . . . . . 90 5.9.5 Auflisten von Playgrounds . . . . . . . . . . . . . . . . . . . . . . 91 5.9.6 Übernehmen von Dateien aus einem Playground . . . . . . . . . 93 5.9.7 Löschen von Dateien aus einem Playground . . . . . . . . . . . . 94 5.10 Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 5.10.1 Einführung in den Profil Editor . . . . . . . . . . . . . . . . . . . . 94 Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 8. viii INHALTSVERZEICHNIS 5.10.2 Laden eines Profils . . . . . . . . . . . . . . . . . . . . . . . . . . 95 5.10.3 Erzeugen und Aktualisieren eines Profils . . . . . . . . . . . . . . 95 5.10.4 Löschen eines Profils . . . . . . . . . . . . . . . . . . . . . . . . . 96 5.11 Versionskontrolle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 5.11.1 Version wiederherstellen . . . . . . . . . . . . . . . . . . . . . . . 96 5.11.2 Version exportieren . . . . . . . . . . . . . . . . . . . . . . . . . . 97 5.11.3 Version löschen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 5.12 Upgrade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 5.12.1 Benutzer-Signaturen . . . . . . . . . . . . . . . . . . . . . . . . . 98 5.12.2 Administrator-Signaturen . . . . . . . . . . . . . . . . . . . . . . . 98 5.13 Authorisierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 6 Logging 101 6.1 Übersicht über die Ereignisarten . . . . . . . . . . . . . . . . . . . . . . . 101 6.2 Logviewer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 6.2.1 Öffnen des Logviewers . . . . . . . . . . . . . . . . . . . . . . . . 102 6.2.2 Ergebnis eines Ereignisses . . . . . . . . . . . . . . . . . . . . . . 102 6.2.3 Konfiguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 6.2.4 Speicherung von Log-Meldungen . . . . . . . . . . . . . . . . . . 103 6.3 ALF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 6.3.1 Typen von ALF-Meldungen . . . . . . . . . . . . . . . . . . . . . . 103 6.3.2 Detailinformationen in ALF-Meldungen . . . . . . . . . . . . . . . 104 6.4 Sandbox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 6.5 SFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 6.6 Playground . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 7 Fehlerbehandlung 109 7.1 Allgemein . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 7.1.1 Beim Klick auf eine Eskalationsmeldung bekommt die Anwendung keinen Fokus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 7.1.2 Bei aktiviertem Autostart von xanoubis werden mehrere Instanzen erzeugt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 7.1.3 Bei Aktivieren einer Policy wird ein Fehler gemeldet . . . . . . . . 111 7.1.4 Nach Hinterlegen des Zertifikates wird Policy nicht geladen . . . . 111 7.1.5 Beim Editieren von Sandbox-/SFS-Regeln kann ich keinen Pfad auswählen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 7.1.6 Auswahldialog für Datei oder Verzeichnis zeigt keine versteckten Objekte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 7.1.7 Neu einlesen der Konfiguration funktioniert nicht . . . . . . . . . . 112 7.1.8 Xanoubis meldet, dass ein neuer Kernel installiert wurde . . . . . 112 7.1.9 Xanoubis meldet: Falsche APN-Version . . . . . . . . . . . . . . . 112 Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 9. INHALTSVERZEICHNIS ix 7.1.10 Xanoubis meldet: Falsche Anoubis-Protokoll-Version . . . . . . . 112 7.1.11 Xanoubis meldet: Falsche .xanoubis-Version . . . . . . . . . . . . 112 7.1.12 Xanoubis meldet: Fehlender Schlüssel . . . . . . . . . . . . . . . 113 7.1.13 Xanoubis meldet: Falsches Zertifikat . . . . . . . . . . . . . . . . . 113 7.1.14 Der Anoubis-Kern bootet nicht in einer VirtualBox . . . . . . . . . 113 7.1.15 Aus einer Eskalation kann keine Regel erzeugt werden . . . . . . 113 7.2 ALF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 7.2.1 Nach einiger Zeit ist keine Netzwerkverbindung mehr möglich . . 114 7.2.2 Das automatische Update funktioniert nicht mehr . . . . . . . . . 114 7.3 Sandbox und SFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 7.3.1 Zugriff auf eine Datei wird verweigert . . . . . . . . . . . . . . . . 114 7.3.2 Nach einer Regeländerung hängt das System . . . . . . . . . . . 114 7.3.3 Es kann kein neuer SFS-Block erstellt werden . . . . . . . . . . . 115 7.3.4 Im Schlüssel-Tab wird eine Warnung angezeigt . . . . . . . . . . 116 7.3.5 Beim Erstellen einer Prüfsumme wird ein Fehler gemeldet . . . . 116 7.3.6 Im Sandbox-Modul wird eine Regel angezeigt, diese wirkt aber nicht116 7.3.7 Nach dem Hinzufügen vieler Prüfsummen treten Fehler auf . . . . 116 7.4 Playground . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 7.4.1 Firefox startet, aber nicht im Playground . . . . . . . . . . . . . . . 117 7.4.2 Eine Applikation startet, aber nicht im Playground . . . . . . . . . 117 7.4.3 Playground kann nicht gelöscht werden . . . . . . . . . . . . . . . 117 8 Fremdsoftware 121 8.1 Virenscanner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 8.1.1 Avira Antivirus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 8.1.2 ClamAV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 8.1.3 Sophos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 8.2 Festplattenverschlüsselung . . . . . . . . . . . . . . . . . . . . . . . . . . 124 8.2.1 TrueCrypt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 8.2.2 eCryptfs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 8.3 X-Server (Xorg) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 8.3.1 Deaktivieren von Xtest . . . . . . . . . . . . . . . . . . . . . . . . 126 A Abstract Policy Notation 127 A.1 Grundlagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 A.1.1 Administrator- und Benutzerregeln . . . . . . . . . . . . . . . . . . 127 A.1.2 Vererbung von Regeln (Kontext-Modul) . . . . . . . . . . . . . . . 127 A.1.3 Standardvorgaben für Ereignisse . . . . . . . . . . . . . . . . . . 128 A.2 Allgemeine Elemente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 A.2.1 Allgemeine Grammatik . . . . . . . . . . . . . . . . . . . . . . . . 129 A.2.2 Identifikation von Applikationen . . . . . . . . . . . . . . . . . . . . 129 Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 10. x INHALTSVERZEICHNIS A.2.3 Regel-Identifikation . . . . . . . . . . . . . . . . . . . . . . . . . . 130 A.2.4 Scope – Regeln mit eingeschränkter Gültigkeit . . . . . . . . . . . 130 A.2.5 Kommentare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 A.2.6 Version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 A.3 Vererbung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 A.4 Application Level Firewall . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 A.4.1 Filterregeln . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 A.4.2 Capability-Regeln . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 A.4.3 Default-Regeln . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 A.5 Sandbox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 A.6 SFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 B Architektur und Pfade 137 B.1 Kernelkomponente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 B.2 Der Anoubis-Daemon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 B.2.1 Pfade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 B.3 Anoubis Werkzeuge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 C SFS Import/Export 141 D Interface für Inhaltsscanner 143 E Glossar 147 Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 11. E INFÜHRUNG • Anoubis • Über dieses Handbuch
  • 12.
  • 13. Kapitel 1 Einführung 1.1 Anoubis 1.1.1 Einleitung Anoubis - die Security-Suite für Enterprise-Umgebungen Webhoster und mobile Rechner: • Kontrolliert anwendungsbezogen Netzwerk- und Dateizugriffe • Schützt vor persistenten Manipulationen Ihrer Anwendungen und Dokumente • Stellt die Integrität Ihrer Dokumente sicher • Verfügbar für OpenBSD und GNU/Linux-Distributionen 1.1.2 Was ist Anoubis? Anoubis ist eine benutzerfreundliche Security Suite, die eine stark abgesicherte Ablau- fumgebung für Softwareprogramme implementiert. Zielsetzung von Anoubis ist es, eine erstmalig alle Aspekte des Sicherheitsmanagements von Rechnersystemen umfassende Lösung zu schaffen, die sowohl die Betriebssysteme der Linux- als auch der BSD-Familie unterstützt. Das Kernstück der Security Suite bilden zum Einen eine Application Level Firewall 1 und eine Sandbox, mit deren Hilfe Prozesse in einer abgeschotteten Umgebung ausgeführt werden können, die nur die notwendigen Zugriffe auf vorhandende Dateien und Netz- werkresourcen erlaubt. Zum Anderen bieten Playgrounds die Möglichkeit, Programme so auszuführen, dass diese keinerlei Änderungen an Dateien im Produktivsystem direkt vor- nehmen können. Die Programme werden dadurch weder in ihrer Funktion beeinträchtigt noch müssen die Programme angepaßt oder verändert werden. Zusammen kann damit sowohl der ungewollte Abfluß von Informationen aus dem System als auch das ungewollte Eindringen von Daten in das System verhindert werden. Darüber hinaus werden Mechanismen zur Sicherstellung der Authentizität von Dateien und Verzeichnissen sowie von Applikationen bereitgestellt. Hierbei werden diese mittels zeitgemäßer Prüfsummen versehen, die darüber hinaus noch signiert werden können. 1 kursiv notierte Begriffe können dem Glossar in Anhang E entnommen werden
  • 14. 4 1. Einführung Die Maßnahmen zur Verbesserung der Sicherheit der Laufzeitumgebung sind sowohl für den Desktop- als auch für den Serverbetrieb gedacht. Anoubis besteht aus den folgenden vier Modulen, die unterschiedliche Aspekte einer ab- gesicherten Umgebung realisieren: Application Level Firewall (ALF) Die Application Level Firewall oder kurz ALF kontrol- liert die Netzwerkzugriffe einzelner Applikationen. Dabei kann für jede Applikation individuell festgelegt werden, welche Netzwerkdienste diese nutzen darf. Sandbox (SB) Die Sandbox oder kurz SB kontrolliert die Dateisystemzugriffe einzelner Applikationen. Dabei kann wieder für jede Applikation individuell festgelegt werden, welche Zugriffe zulässig sind. Sicheres Filesyste (SFS) Das sichere Filesystem oder kurz SFS sorgt für die Verwaltung von Prüfsummen für Dateien im System. Jeder Benutzer kann individuell Prüfsum- men verwalten. Änderungen an Dateien können dadurch festgestellt werden. Darüber hinaus können die Prüfsummen aber auch direkt beim Zugriff auf Dateien geprüft wer- den. So kann der Zugriff auf eine Datei vollständig verhindert werden, wenn Ihr Inhalt nicht mehr mit der registrierten Prüfsumme übereinstimmt. Playground (PG) Der Playground bietet die Möglichkeit, Programme so zu starten, dass sie keine Änderungen an existierenden Dateien vornehmen können. Versucht ein Programm dennoch Änderungen zu machen, dann wird die Datei kopiert und die Änderungen werden nur auf der Kopie vorgenommen. Das Playground Modul sorgt dafür, dass dies durch das Programm selbst nicht bemerkt wird. Es sind auch keinerlei Änderungen am Programm selbst notwendig. Bevor auf Dateien, die in einem Playground verändert wurden, von anderen Program- men außerhalb des Playgrounds zugegriffen werden können, müssen Sie durch den Benutzer ins System übernommen werden. Dabei kann vor der Übernahme der Da- teiinhalt durch Inhaltsscanner (z.B. einen Virenscanner) überprüft werden. So wird zuverlässig verhindert, dass Daten durch die in einem Playground laufende Anwendung unkontrolliert ins eigentliche System gelangen können. 1.2 Über dieses Handbuch 1.2.1 Terminologien und Abkürzungen Im vorliegenden Handbuch werden u.a. die nachfolgenden Abkürzungen verwendet: ALF für Application Level Firewall SFS für Sicheres Filesystem SB für Sandbox PG für Playground Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 15. 1.2. Über dieses Handbuch 5 Textdarstellungen Konvention Bedeutung Text ¤ § Text für Aus- oder Eingaben, Dateinamen Enter ¥ ¦ Einzelne Taste auf der Tastatur Objekt Name eines Objektes im GUI (z.B. Menü) oder eines Programms Begriff Kennzeichnet einen Begriff des Glossars Darüber hinaus finden zahlreiche Abkürzungen aus dem Netzwerk- und Security-Bereich Verwendung, die zumeist im Glossar in Anhang E nachgeschlagen werden können. 1.2.2 Die Gliederung des Handbuchs Das vorliegende Handbuch untergliedert sich in die folgenden Abschnitte: Einführung Neben der hier vorliegenden Einleitung finden Sie hier darüber hinaus allge- meine Informationen zu Anoubis. Installation Im Kapitel Installation werden die notwendigen Schritte zur Installation von Anoubis dargelegt. GUI Überblick Das Kapitel GUI Überblick gewährt einen Überblick hinsichtlich der we- sentlichen Bestandteile der Graphischen Oberfläche von Anoubis. Konfiguration Nach erfolgter Installation beschreibt dieses Kapitel alle Schritte zur Kon- figuration von Anoubis. Hierbei werden zu Beginn allgemein gültige und modulüber- greifende Konfigurationsmöglichkeiten der Security Suite Anoubis dargelegt. Daran schließt sich eine detaillierte Vorstellung der einzelnen Sicherheitsmodule und de- ren spezifischen Einstellungsmöglichkeiten an. Die umfassenden Möglichkeiten zur Konfiguration mittels GUI werden hierbei in einem eigenen Kapitel aufgezeigt. Betrieb Dieses Kapitel stellt typische Konfigurationsszenarien von Anoubis vor und rich- tet sich hauptsächlich an fortgeschrittene Anwender. Logging Dieses Kapitel bietet ein Übersicht über die Ereignisarten, eine Beschreibung des LogViewer und Loggingfunktionen von ALF, SB und SFS. Fehlerbehandlung Anhand von ausgewählten Szenarien beschreibt dieses Kapitel die notwendigen Schritte zur Lösung von Problemen. Abstract Policy Notation In Anhang A wird eine Übersicht zur von den einzelnen Kom- ponenten verwendeten Metasprache gegeben. Architektur und Pfade Hier wird eine grobe Übersicht über den Aufbau von Anoubis gegeben, sowie über wichtige Dateien die zu Anoubis gehören. SFS Import/Export Das beim Import und Export von Prüfsummen und Signaturen ver- wendete Dateiformat, wird in Anhang C ausführlicher beschrieben. Interface für Inhaltsscanner In Anhang D wird die Schnittstelle zu Inhaltsscannern für den Playground spezifiziert. Glossar Ein Großteil der im Handbuch verwendeten Begrifflichkeiten kann im Glossar in Anhang E nachgeschlagen werden. Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 16. 6 1. Einführung Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 17. I NSTALLATION • Allgemein • Debian • Fedora • OpenSuse • OpenBSD • Ubuntu
  • 18.
  • 19. Kapitel 2 Installation 2.1 Allgemein Die Anoubis-Security-Suite besteht aus drei Paketen: • dem Kernel (Name plattform- bzw. distributionsabhängig) • dem Daemon (anoubisd unter Linux bzw. anoubis-daemon unter OpenBSD) • der graphischen Benutzeroberfläche xanoubis (anoubis-gui unter OpenBSD) Um die Sicherheitsfunktionen von Anoubis nutzen zu können, müssen alle drei Kompo- nenten installiert sein und der Anoubis-Kernel muss gebootet sein. Auch wenn Anoubis installiert ist, ist es auch weiterhin möglich, einen Kernel ohne Anoubis-Funktionalität zu booten. 2.1.1 Empfohlene Systemkonfiguration Partition für SFS Prüfsummen Anoubis verwaltet den Prüfsummenbestand unterhalb des Verzeichnisses /var/lib/anoubis/sfs/. Dort werden unter Umständen sehr viele, in der Re- gel aber sehr kleine Dateien erzeugt. Wir empfehlen daher, für das Verzeichnis /var/lib/anoubis/sfs/ eine separate Partition zu verwenden. Diese sollte für das Speichern von sehr vielen kleinen Dateien optimiert sein. Hier bietet sich zum Beispiel eine XFS-Partition an, die wie folgt erzeugt wurde: mkfs.xfs -b size=512 -i maxpct=80 /device/of/partition Wenn keine geeignete Partition zur Verfügung steht, kann auch eine Datei verwendet und mit Hilfe von loopback-Mounts als Partition gemountet werden. Playground Spool Verzeichnis Wenn Sie vorhaben, Inhaltsscanner zusammen mit dem Playground einzusetzen, dann muss diesen ein Spool-Verzeichnis zur Verfügung stehen. Als Spool-Verzeichnis wird das
  • 20. 10 2. Installation Heimatverzeichnis des Benutzers _anoubisscan verwendet. Dort sollte genügen freier Platz zum Zwischenspeichern von Dateien vorhanden sein. Normalerweise liegt dieses unter /var/spool/anoubis. Achtung: Das verwendete Spool-Verzeichnis darf nur für den Benutzer _anoubisd les- bar sein. 2.2 Debian Die Anweisungen in diesem Abschnitt beziehen sich auf Debian 5.0 “Lenny”. Um das In- stallieren der Debian-Pakete - vom lokalen Dateisystem aus - mittels dpkg durchzuführen, kopieren Sie bitte die drei Pakete (kernel, anoubis und xanoubis) auf Ihr System. Wech- seln Sie nun in das Verzeichnis, das die zuvor heruntergeladenen Pakete enthält. Die Installation der Anoubis-Pakete kann danach wie folgt durchgeführt werden dpkg -i linux-image-2.6.26-anoubis-0.9.2.d023.972.d076_1_i386.deb dpkg -i anoubisd_0.9.2.D023.972.D076_i386.deb dpkg -i xanoubis_0.9.2.D023.972.D076_i386.deb Dabei wird durch den Aufruf in der ersten Zeile das Kernel-Paket installiert. Wenn die default Bootloader-Konfiguration verwendet wird, wird ab dem nächsten Reboot die Anoubis-Security-Suite aktiviert. Ansonsten muss der neue Kernel noch in →Grub oder →Lilo konfiguriert werden. Um die Installation, der von den Anoubis-Paketen benötigten Abhängigkeiten zu ermögli- chen, geben Sie abschließend den folgenden Befehl ein. apt-get -f install Bei Bedarf kann der Zugriff auf das Device /dev/eventdev zusätzlich weiter einge- schränkt werden: chmod 600 /dev/eventdev 2.2.1 Deinstallation Starten Sie das System neu und booten Sie den jeweiligen Standard-Kernel, der von ihrer Distribution bereitgestellt wird. Um sowohl das Kernel-Paket als auch die Anoubis-Pakete (anoubisd und xanoubis) sowie die zugehörigen Konfigurationsdateien zu deinstallie- ren, gehen Sie - nach dem erfolgten Neustart des Systems - wie folgt vor. Bestimmen Sie die installierten Anoubis-Pakete mittels des folgenden Kommandos. dpkg --get-selections | grep anoubis | awk '{print $1}' Eine beispielhafte Ausgabe könnte wie folgt aussehen. anoubisd linux-image-2.6.26-anoubis-0.9.2.d023.972.d133 xanoubis Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 21. 2.3. Fedora 11 Um die aufgelisteten Pakete zu deinstallieren, gehen Sie wie folgt vor. dpkg --purge xanoubis dpkg --purge anoubisd dpkg --purge linux-image-2.6.26-anoubis-0.9.2.d023.972.d133 Beachten Sie bitte, dass die Anweisung zur Deinstallation des Kernel-Pakets den vollstän- digen Namen (inklusive der Versionsnummer) aufweisen muss. Dieser ist entsprechend der Ausgabe des oben genannten Kommandos anzupassen. Die Komponenten anoubisd und xanoubis greifen auf zusätzliche Dateien und Pfade zurück, die nicht im Rahmen der Deinstallation der Pakete entfernt werden. Um eine voll- ständige Deinstallation aller für Anoubis relevanten Bestandteile durchzuführen, müssen die unter Punkt B.2.1 und B.3 genannten Pfade und Dateien vom System entfernt werden. Nach der Deinstallation der Anoubis-Pakete ist ein Reboot des Systems ratsam. 2.3 Fedora Diese Anweisungen beziehen sich auf Fedora Core 11. Wenn die RPM-Pakete anoubisd und xanoubis sowie das Kernel-Paket ins aktuelle Verzeichnis heruntergeladen wurden, können sie mit dem folgenden Kommando installiert werden. yum install *.rpm --nogpgcheck Hierbei kann es zu Konflikten mit Paketen kommen, die auf dem System installiert und aktueller sind, als die, die installiert werden sollen. Dabei kommt es zur folgenden Fehler- meldung. $ Transaction Check Error: package <Paketname> (which is newer than <Paketname>) is already installed Um das Paket dennoch zu installieren, rufen Sie bitte folgendes Kommando auf: $ rpm -i --force <Paketname> Wenn die default Bootloader-Konfiguration verwendet wird, wird ab dem nächsten Reboot die Anoubis-Security-Suite aktiviert. Ansonsten muss der neue Kernel noch in →Grub oder →Lilo konfiguriert werden. Bei Bedarf kann der Zugriff auf das Device /dev/eventdev zusätzlich weiter einge- schränkt werden: chmod 600 /dev/eventdev Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 22. 12 2. Installation 2.3.1 Deinstallation Starten Sie das System neu und booten Sie den jeweiligen Standard-Kernel, der von ihrer Distribution bereitgestellt wird. Um sowohl das Kernel-Paket als auch die Anoubis-Pakete (anoubisd und xanoubis) sowie die zugehörigen Konfigurationsdateien zu deinstallie- ren, gehen Sie - nach dem erfolgten Neustart des Systems - wie folgt vor. Bestimmen Sie die installierten Anoubis-Pakete mittels des folgenden Kommandos. rpm -qa | grep anoubis Eine beispielhafte Ausgabe könnte wie folgt aussehen. xanoubis-0.9.2.D023.972.D133-2 kernel-2.6.26anoubis0.9.2.d023.972.d133-1 anoubisd-0.9.2.D023.972.D133-2 Um die aufgelisteten Pakete zu deinstallieren, gehen Sie wie folgt vor. yum remove xanoubis yum remove anoubisd yum remove kernel-2.6.26anoubis0.9.2.d023.972.d105-1 Beachten Sie bitte, dass die Anweisung zur Deinstallation des Kernel-Pakets den vollstän- digen Namen (inklusive der Versionsnummer) aufweisen muss. Dieser ist entsprechend der Ausgabe des oben genannten Kommandos anzupassen. Die Komponenten anoubisd und xanoubis greifen auf zusätzliche Dateien und Pfade zurück, die nicht im Rahmen der Deinstallation der Pakete entfernt werden. Löschen Sie die Dateien und Verzeichnisse, die unter den Punkten B.2.1 und B.3 genannt werden, um eine vollständige Deinstallation durchzuführen. Nach der Deinstallation des Anoubis-Pakete ist ein Reboot des Systems ratsam. 2.4 OpenSuse Diese Anweisungen beziehen sich auf OpenSuse 11.2. Wenn die RPM-Pakete anoubisd und xanoubis sowie das Kernel-Paket ins aktuelle Verzeichnis heruntergeladen wurden, können sie mit folgenden Kommandos installiert werden. zypper install kernel-default-2.6.31.5-0.1.i586.rpm zypper install anoubisd-0.9.2-1.i586.rpm zypper install xanoubis-0.9.2-1.i586.rpm In diesen Kommandos müssen die Versionsnummern der Pakete durch die Versionsnum- mern der heruntergeladenen Pakete ersetzt werden. Wenn die default Bootloader-Konfiguration verwendet wird, wird ab dem nächsten Reboot die Anoubis-Security-Suite aktiviert. Ansonsten muss der neue Kernel noch in →Grub oder →Lilo konfiguriert werden. Bei Bedarf kann der Zugriff auf das Device /dev/eventdev zusätzlich weiter einge- schränkt werden: chmod 600 /dev/eventdev Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 23. 2.5. OpenBSD 13 2.4.1 Deinstallation Starten Sie das System neu und booten Sie den jeweiligen Standard-Kernel, der von ihrer Distribution bereitgestellt wird. Um sowohl das Kernel-Paket als auch die Anoubis-Pakete (anoubisd und xanoubis) sowie die zugehörigen Konfigurationsdateien zu deinstallie- ren, gehen Sie - nach dem erfolgten Neustart des Systems - wie folgt vor. Bestimmen Sie die installierten Anoubis-Pakete mittels des folgenden Kommandos. rpm -qa | grep anoubis Eine beispielhafte Ausgabe könnte wie folgt aussehen. anoubisd-0.9.2.D023.972.D130-2 xanoubis-0.9.2.D023.972.D130-2 kernel-2.6.26anoubis0.9.2.d023.972.d130-1 Um die aufgelisteten Pakete zu deinstallieren, gehen Sie wie folgt vor. rpm -e xanoubis rpm -e anoubisd rpm -e kernel-2.6.26anoubis0.9.2.d023.972.d130-1 Beachten Sie bitte, dass die Anweisung zur Deinstallation des Kernel-Pakets den vollstän- digen Namen (inklusive der Versionsnummer) aufweisen muss. Dieser ist entsprechend der Ausgabe des oben genannten Kommandos anzupassen. Die Komponenten anoubisd und xanoubis greifen auf zusätzliche Dateien und Pfade zurück, die nicht im Rahmen der Deinstallation der Pakete entfernt werden. Um eine voll- ständige Deinstallation aller für Anoubis relevanten Bestandteile durchzuführen, müssen die unter Punkt B.2.1 und B.3 genannten Pfade und Dateien vom System entfernt werden. Nach der Deinstallation der Anoubis-Pakete ist ein Reboot des Systems ratsam. 2.5 OpenBSD Zur Installation des OpenBSD Release von Anoubis brennen Sie das ISO-Image auf CD und booten von dieser. Alternativ lässt sich die Installation auch mittels einer Virtualisie- rungssoftware wie qemu(1) wie folgt vornehmen: qemu-img create <Pfad/zum/Dateisystemimage> 4G qemu -hda <Pfad/zum/Dateisystemimage> -cdrom <Pfad/zum/ISO> -boot d Im Folgenden wird schrittweise die Installation von Anoubis unter OpenBSD beispielhaft durchgeführt. Nach dem Bootvorgang begrüßt Sie der OpenBSD-Installer: root on rd0a swap on rd0b dump on rd0b erase ^?, werase ^W, kill ^U, intr ^C, status ^T Welcome to the OpenBSD/i386 4.6 install program. (I)nstall, (U)pgrade or (S)hell? I Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 24. 14 2. Installation Cool! Let's get to it. At any promp except password prompts you can escape to a shell by typing '!'. Default answers are shown in []'s and are selected by pressing RETURN. You can exit this program at any time by pressing Control-C. But this can leave your system in an inconsistent state. Choose your keyboard layout ('?' or 'L' for list) [default] de kbd: keyboard mapping set to de Anschließend erfolgt die Konfiguration des Netzwerks. System hostname? (short form, e.g. 'foo') anoubis Available network interfaces are: fxp0 x10. Which one do you wish to configure? (or 'done') [x10] <Enter> IPv4 address for x10? (or 'dhcp' or 'none') [dhcp] <Enter> Issuing hostname-associated DHCP request for x10. DHCPDISCOVER on fxp0 to 255.255.255.255 port 67 interval 2 DHCPOFFER from 192.168.1.257 (00:30:48:8c:50:21) DHCPREQUEST on x10 to 255.255.255.255 port 67 DHCPACK from 192.1668.1.254 (00:30:48:8c:50:21) bound to 69.241.244.76 -- renewal in 1800 seconds. IPv6 address for x10? (or 'rtsol' or 'none') [none] <Enter> Available network interfaces are: fxp0 x10. Which one do you wish to configure? (or 'done') [done] <Enter> Using DNS domainname example.com Using DNS nameserver at 68.87.77.130 68.87.72.130 Do you want to do any manual network configuration? [no] <Enter> Im nächsten Schritt wird das Passwort für den Nutzer root festgelegt. Password for root account? (will not echo) pAssWOrd Password for root account? (again) pAssWOrd Start sshd(8) by default? [yes] <Enter> Start ntpd(8) by default? [no] <Enter> Do you expect to run the X Window System? [yes] <Enter> Do you want the X Window System to be started by xdm(1)? [no] <Enter> Change the default console to com0? [no] <Enter> Setup a user? (enter a lower-case loginname, or 'no') [no] <Enter> Since you setup a user, disable sshd(8) logins to root? [yes] <Enter> Im folgenden Schritt wird die Partitionierung der Festplatte vorgenommen. Available disks are: wd0 Which one is the root disk? (or 'done') [wd0] <Enter> Offset: 1312752 Signature: 0xAA55 Starting Ending LBA Info: #: id C H S - C H S [ start: size ] ------------------------------------------------------------------------------- *0: 0B 0 1 1 - 195 254 63 [ 63: 3148677 ] WinXP FAT-32 1: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused 2: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused 3: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused Offset: 1012095 Signature: 0xAA55 Starting Ending LBA Info: #: id C H S - C H S [ start: size ] Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 25. 2.5. OpenBSD 15 ------------------------------------------------------------------------------- 0: 0B 0 1 1 - 195 254 63 [ 63: 3148677 ] OpenBSD 1: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused..... 2: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused..... 3: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused... Offset: 12739545 Signature: 0xAA55 Starting Ending LBA Info: #: id C H S - C H S [ start: size ] ------------------------------------------------------------------------------- 0: 0B 0 1 1 - 195 254 63 [ 63: 3148677 ] Linux 1: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused..... 2: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused..... 3: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused... Use (W)hole disk, use the (O)penBSD area, or (E)dit the MBR? [OpenBSD] O The auto-allocated layout for wd0 is: # size offset fstype [fsize bsize cpg] a: 984.5M 1012158 4.2BSD 2048 16384 1 # / b: 256.0M 3028435 swap c: 76319.1M 0 unused d: 3072.0M 3552726 4.2BSD 2048 16384 1 # /usr e: 1413.8M 9844182 4.2BSD 2048 16384 1 # /home e: 494.2M 63 ext2fs j: 70096.1M 12739608 unknown Use (A)uto layout, (E)dit auto layout, or create (C)ustom layout? [a] A /dev/rwd0a: 984.5MB in 2016280 sectors of 512 bytes 5 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each /dev/rwd0e: 1413.8MB in 2895360 sectors of 512 bytes 7 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each /dev/rwd0d: 3072.0MB in 6291456 sectors of 512 bytes 16 cylinder groups of 202.47MB, 12958 blocks, 25984 inodes each /dev/wd0a on /mnt type ffs (rw, asynchronous, local) /dev/wd0e on /mnt/home type ffs (rw, asynchronous, local, nodev, nosuid) /dev/wd0d on /mnt/usr type ffs (rw, asynchronous, local, nodev) Let's install the sets! Location of sets? (cd disk ftp http or 'done') [cd] <Enter> Available CD-ROMs are: cd0. Which one contains the install media? (or 'done') [cd0] <Enter> Pathname to the sets? (or 'done') [4.6/i386] <Enter> Select sets by entering a set name, a file name pattern or 'all'. De-select sets by prepending a '-' to the set name, file name pattern or 'all'. Selected sets are labeled '[x]'. [X] bsd [X] etc46.tgz [X] game46.tgz [X] xserv46.tgz [X] bsd.rd [X] misc46.tgz [X] xbase46.tgz [ ] site46.tgz [X] bsd.mp [X] comp46.tgz [X] xetc46.tgz [X] base46.tgz [X] man46.tgz [X] xshare46.tgz Set name(s)? (or 'abort' or 'done') [done] all [X] bsd [X] etc46.tgz [X] game46.tgz [X] xserv46.tgz [X] bsd.rd [X] misc46.tgz [X] xbase46.tgz [X] site46.tgz [X] bsd.mp [X] comp46.tgz [X] xetc46.tgz [X] base46.tgz [X] man46.tgz [X] xshare46.tgz Set name(s)? (or 'abort' or 'done') [done] <Enter> bsd 100% |***************************************| 6356 KB 00:09 ETA bsd.rd 100% |***************************************| 5003 KB 00:03 ETA bsd.mp 100% |***************************************| 6401 KB 00:04 ETA base46.tgz 100% |***************************************| 42854 KB 00:38 ETA etc46.tgz 100% |***************************************| 1190 KB 00:01 ETA misc46.tgz 100% |***************************************| 2252 KB 00:02 ETA comp46.tgz 100% |***************************************| 77563 KB 01:05 ETA man46.tgz 100% |***************************************| 7530 KB 00:08 ETA game46.tgz 100% |***************************************| 2547 KB 00:01 ETA Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 26. 16 2. Installation xbase46.tgz 100% |***************************************| 9450 KB 00:08 ETA xetc46.tgz 100% |***************************************| 76180 KB 00:00 ETA xshare46.tgz 100% |***************************************| 2678 KB 00:05 ETA xserv46.tgz 100% |***************************************| 8543 KB 00:07 ETA site46.tgz 100% |***************************************| 8543 KB 00:32 ETA Location of sets? (cd disk ftp http or 'done') [done] <Enter> What timezone are you in? ('?' for list) [Europe/Berlin] <Enter> Saving configuration files...done. Generating initial host.random file...done. Making all device nodes...done. Mulitprocessor machine; using bsd.mp instead of bsd. *********************************** Installing Anoubis packages *********************************** ==> Installing anoubisd .. ==> Installing xanoubis .. CONGRATULATIONS! Your OpenBSD install has been successfully completed! To boot the new system, enter 'reboot' at the command prompt. When you login to your new system the first time, please read your mail using the 'mail' command. Die Installation ist hiermit abgeschlossen. Um in das neue System zu booten geben Sie am Shell-Prompt das Kommando reboot ein. # reboot syncing disks... done Bei Bedarf kann der Zugriff auf das Device /dev/eventdev zusätzlich weiter einge- schränkt werden: chmod 600 /dev/eventdev 2.5.1 Deinstallation Starten Sie das System neu und geben Sie am Boot-Prompt die folgende Zeile ein. > boot bsd.mp Um sowohl den Anoubis-Kernel als auch die Anoubis-Pakete anoubis-daemon und anoubis-gui sowie die zugehörigen Konfigurationsdateien zu deinstallieren, gehen Sie - nach dem erfolgten Neustart des Systems - wie folgt vor. pkg_delete anoubis-gui pkg_delete daemon mv /bsd /bsd.anoubis cp /bsd.GENERIC.UP /bsd Die Komponenten anoubis-daemon und anoubis-gui greifen auf zusätzliche Dateien und Pfade zurück, die nicht im Rahmen der Deinstallation der Pakete entfernt werden. Um Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 27. 2.6. Ubuntu 17 eine vollständige Deinstallation aller für Anoubis relevanten Bestandteile durchzuführen, müssen die unter Punkt B.2.1 und B.3 genannten Pfade und Dateien vom System entfernt werden. Nach der Deinstallation der Anoubis-Pakete ist ein Reboot des Systems ratsam. 2.6 Ubuntu Die Anweisungen in diesem Abschnitt gelten sowohl für das Release Ubuntu 9.0.4 “Jaunty Jackalope” als auch Ubuntu 9.10 “Karmic Koala”. Um das Installieren der Ubuntu-Pakete - vom lokalen Dateisystem aus - mittels dpkg durchzuführen, kopieren Sie bitte die drei Pakete (kernel, anoubis und xanoubis) auf Ihr System. Wechseln Sie nun in das Verzeichnis, das die zuvor heruntergeladenen Pakete beinhaltet. Die Installation der Anoubis-Pakete kann danach wie folgt durchgeführt werden dpkg -i linux-image-2.6.26-anoubis-0.9.2.d023.972.d076_1_i386.deb dpkg -i anoubisd_0.9.2.D023.972.D076_i386.deb dpkg -i xanoubis_0.9.2.D023.972.D076_i386.deb Dabei wird durch den Aufruf in der ersten Zeile das Kernel-Paket installiert. Wenn die default Bootloader-Konfiguration verwendet wird, wird ab dem nächsten Reboot die Anoubis-Security-Suite aktiviert. Ansonsten muss der neue Kernel noch in →Grub oder →Lilo konfiguriert werden. Um die Installation, der von den Anoubis-Paketen benötigten Abhängigkeiten zu ermögli- chen, geben Sie abschließend den folgenden Befehl ein apt-get -f install Bei Bedarf kann der Zugriff auf das Device /dev/eventdev zusätzlich weiter einge- schränkt werden: chmod 600 /dev/eventdev 2.6.1 Deinstallation Starten Sie das System neu und booten Sie den jeweiligen Standard-Kernel, der von ihrer Distribution bereitgestellt wird. Um sowohl das Kernel-Paket als auch die Anoubis-Pakete (anoubisd und xanoubis) sowie die zugehörigen Konfigurationsdateien zu deinstallie- ren, gehen Sie - nach dem erfolgten Neustart des Systems - wie folgt vor. Bestimmen Sie die installierten Anoubis-Pakete mittels des folgenden Kommandos. dpkg --get-selections | grep anoubis | awk '{print $1}' Eine beispielhafte Ausgabe könnte wie folgt aussehen. anoubisd linux-image-2.6.26-anoubis-0.9.2.d023.972.d133 xanoubis Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 28. 18 2. Installation Um die aufgelisteten Pakete zu deinstallieren, gehen Sie wie folgt vor. dpkg --purge xanoubis dpkg --purge anoubisd dpkg --purge linux-image-2.6.26-anoubis-0.9.2.d023.972.d133 Beachten Sie bitte, dass die Anweisung zur Deinstallation des Kernel-Paket den vollstän- digen Namen (inklusive der Versionsnummer) aufweisen muss. Dieser ist entsprechend der Ausgabe des oben genannten Kommandos anzupassen. Die Komponenten anoubisd und xanoubis greifen auf zusätzliche Dateien und Pfade zurück, die nicht im Rahmen der Deinstallation der Pakete entfernt werden. Um eine voll- ständige Deinstallation aller für Anoubis relevanten Bestandteile durchzuführen, müssen die unter Punkt B.2.1 und B.3 genannten Pfade und Dateien vom System entfernt werden. Nach der Deinstallation der Anoubis-Pakete ist ein Reboot des Systems ratsam. Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 29. GUI Ü BERBLICK • Statusanzeige • Trayicon • Navigationsleiste • Hauptfenster • Infoleiste • Werkzeuge • Benachrichtigungen und Anfragen • Einstellungen
  • 30.
  • 31. Kapitel 3 GUI Überblick 3.1 Statusanzeige Wichtige Informationen werden in der Statusanzeige, unabhängig von der aktuell aktiven Ansicht, links oben dargestellt. Dadurch wird es ermöglicht, jederzeit über Statusänderun- gen des Systems informiert zu werden. Abbildung 3.1: Strukturelle Übersicht der Graphischen Benutzeroberfläche. .
  • 32. 22 3. GUI Überblick 3.2 Navigationsleiste In der links unterhalb der Statusanzeige angeordneten Navigationsleiste befinden sich Auswahlfelder, die den Zugriff auf die einzelnen Module von Anoubis ermöglichen. Im Be- reich Übersicht wird dem Benutzer ein Gesamtüberblick über den Status aller Anoubis- Module gegeben. Weiterhin ist hier eine direkte Zugriffsmöglichkeit - mittels der Schaltflä- chen Verbinden und Trennen - gegeben, um sich mit dem anoubisd zu verbinden bzw. sich von ihm abzumelden. Der Bereich ALF umfasst die vereinfachte Übersicht hinsicht- lich der Firewallfunktionalität. Im Teil SFS, können Einstellungsmöglichkeiten hinsichtlich der zu überwachenden Dateien auf dem Rechner vorgenommen werden. Darüberhinaus ist die vereinfachte Übersicht der aktiven SFS-Regeln dargestellt. Im Bereich SB befin- det sich die vereinfachte Übersicht der aktiven Sandbox-Regeln. Der Bereich Anoubis ermöglicht das Arbeiten mit Benachrichtigungen und Anfragen. 3.3 Hauptfenster Innerhalb der Module SFS und Anoubis erfolgt die Navigation mittels Reitern, die am oberen Ende des Hauptfensters dargestellt werden. Beispielsweise werden im Modul SFS innerhalb des Reiters Browser sowohl die Sicht auf das Dateisystem dargestellt als auch die Verwaltung von Prüfsummen und Signaturen im Kontext des SFS ermöglicht. 3.4 Infoleiste Die Infoleiste (links unten) stellt verschiedene Informationen zur Aktivität von Anoubis dar. So wird beispielsweise eine fehlgeschlagene Verbindung zum Anoubis Daemon oder das Ergebnis beim Laden einer Regeldatei hier dargestellt. 3.5 Werkzeuge Im rechten unteren Teil des Anoubis-Hauptfensters befinden sich Schaltflächen, die den direkten Zugriff auf den RuleEditor, LogViewer und den Wizard erlauben. Der RuleE- ditor ermöglicht hierbei sehr feingranulare Einstellungsmöglichkeiten zu den Regelsätzen der jeweiligen Anoubis-Module. Im LogViewer werden alle Logmeldungen, Alarme und Eskalationen zugänglich gemacht. Der Wizard stellt eine Alternative zur Regelerstellung im RuleEditor dar. Hierbei wird der Benutzer bei der Erstellung von Regeln unterstützt und begleitet. Alternativ können über die Menüleiste mit Werkzeuge -> LogViewer, Werkzeu- ge -> RuleEditor oder Werkzeuge -> Wizard diese Fenster aufgerufen werden. 3.6 Trayicon Zusätzlich zum Hauptfenster der Graphischen Benutzeroberfläche steht ein Trayicon zur Verfügung. Trayicons sind die kleinen Symbole, die in der Taskleiste, neben der Uhr er- Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 33. 3.6. Trayicon 23 scheinen. Diese bieten schnellen und direkten Zugriff auf die GUI. Hierbei werden ab- hängig vom Status des Trayicons die drei folgenden Fälle - mit abnehmender Priorität - unterschieden. 3.6.1 Benachrichtigung über offene Nachfragen Bei bestehenden Eskalationsmeldungen, die eine Nachfrage beim Benutzer erfordern, erscheint das Trayicon mit einem roten Fragezeichen im Vordergrund. Ein Linksklick der Maus auf das Symbol führt in diesem Fall direkt in das Fenster zur Beantwortung der entsprechenden Eskalationen. 3.6.2 Benachrichtigung über Alarme Bei aufgelaufenen Logmeldungen und Alarmen (Fehlschlagen der Verbindung zum Dae- mon, nichtgeladene Module) wird das Trayicon mit einem gelben Ausrufezeichen verse- hen. Ein Linksklick der Maus auf das Symbol öffnet automatisch die Ansicht der Logmel- dungen im GUI. 3.6.3 Normalzustand Stehen weder Alarme noch Eskalationen an, so wird das Trayicon ohne weitere farbli- che Hervorhebung präsentiert. In diesem Zustand führt ein Linksklick der Maus auf das Symbol zum Umschalten der Sichtbarkeit der GUI. Dies führt bei sichtbarer GUI zum Ver- bergen des Fensters und im gegenteiligen Fall zur Anzeige dergleichen. Darüber hinaus kann jederzeit - durch einen Rechtsklick der Maus auf das Symbol - das Kontextmenü der grafischen Benutzeroberfläche aktiviert werden. Dieses bietet sowohl eine Option zum Beenden als zum Wiederherstellen der GUI. Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 34. 24 3. GUI Überblick Abbildung 3.2: Darstellungsfenster für Benachrichtigungen. . 3.7 Benachrichtigungen und Anfragen Wenn eine „ask”-Regel erstellt wurde, entscheidet Anoubis nicht selbst darüber, was Pro- zesse dürfen und was nicht. Statt dessen erzeugt Anoubis eine Nachfrage, d. h. Anoubis überlässt dem Benutzer die Entscheidung, ob ein Programm z.B. eine Netzwerkverbin- dung erstellen darf oder nicht. Wenn beispielsweise die Applikation Firefox eine „ask”-Regel hat, fragt Anoubis bei je- der von Firefox aufgebauten Verbindung beim Benutzer nach, ob diese zugelassen oder verhindert werden soll. 3.7.1 Benachrichtigungen Im Navigationselement Anoubis erscheint unter dem Reiter Benachrichtigungen (siehe Abbildung 3.2) ein Drop-Down-Menü mit Auswahlmöglichkeit zu verschiedenen Ansichten (Aktuelle Anfragen, Benachrichtigungen, Geschlossene Nachfragen, Alle). Aktuelle Anfragen Unter Aktuelle Anfragen können die von Anoubis generierten Nachfragen beantwortet werden. Nachdem über die Dauer der Gültigkeit entschieden wurde, kann mittels der Schaltflächen erlauben oder verbieten die gewünschte Entscheidung getroffen werden. Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 35. 3.8. Einstellungen 25 Sollte der Firefox eine „ask”-Regel haben dann erscheint bei einem Verbindungsaufbau ei- ne Nachfage. Diese Nachfage beinhaltet einen Informationsteil und einen Einstellungsteil. Im Einstellungsteil lässt sich die Bedingung zur Gültigkeit präzise festlegen. Benachrichtigungen Im Bereich Benachrichtigungen können entstandene Benachrichtigungen betrachtet werden. Benachrichtigungen werden von Regeln erzeugt, bei denen im Regeleditor un- ter „Logging” das Attribut normal oder kritisch aktiviert wurde. Geschlossene Nachfragen Wenn Geschlossene Nachfragen ausgewählt wurde, kann Einblick in die bereits beant- worteten Nachfragen genommen werden. Alle Hier lassen sich alle Nachrichten darstellen. 3.8 Einstellungen Der Reiter Einstellungen bietet Zugriff auf die Konfigurationsmöglichkeiten hinsichtlich des Verhaltens der grafischen Benutzeroberfläche. 3.8.1 Einstellungen zur Esklationsbenachrichtigung Die Einstellung Sende Eskalationen ermöglicht die Darstellung von Nachfragen in Pop- Up-Fenstern am rechten unteren Bildschirmrand an- oder auszuschalten. Dabei kann ebenfalls eingestellt werden, wie lange diese Pop-Up-Fenster geöffnet bleiben sollen. 3.8.2 Einstellungen zur Alarmbenachrichtigung Mittels der Einstellung Sende Alarme besteht die Möglichkeit, die Darstellung von Alar- men in Pop-Up-Fenstern am rechten unteren Bildschirmrand an- oder auszuschalten. Hier kann ebenfalls eingestellt werden, wie lange diese Pop-Up-Fenster geöffnet bleiben sol- len. 3.8.3 Autostart Die Aktivierung der Einstellung Autostart registriert die Graphische Benutzeroberfläche für den automatischen Start unter den Desktopumgebungen KDE und Gnome. Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 36. 26 3. GUI Überblick Abbildung 3.3: Upgrade Dialogbox 3.8.4 RuleEditor Bei Aktivierung der Einstellung Automatische Prüfsummenüberprüfung werden auto- matisch alle direkt in einem Regelsatz enthaltenen Prüfsummen vor dem Senden des Regelsatzes an den Daemon überprüft. 3.8.5 Verbindung Beim Aktivieren der Einstellung Automatisches Verbinden zum Daemon verbindet sich die GUI beim Start automatisch mit dem Daemon. 3.8.6 Tool Tips Wird diese Einstellung aktiviert, so werden dem Benutzer weitergehende Informationen zu den einzelnen Schaltflächen des GUI angezeigt, wenn der Mauszeiger für die Dauer der eingestellten Zeit in Sekunden auf diesen verweilt. 3.9 Upgrade Dialogbox Beim Verbinden mit dem Anoubis Daemon oder nach Abschluss der Installation neuer Software im Rahmen eins Upgrades wird überprüft, ob Signaturen registriert sind, die jetzt angepasst werden müssen. Ist dies der Fall wird dem Benutzer eine Dialogbox (siehe Abbildung 3.3) angezeigt, um ihn auf diese Änderungen hinzuweisen. In diesem Dialog hat er die Möglichkeit, die Option zum Wiederanzeigen der Dialogbox auszuschalten, den Dialog ohne weitere Aktionen zu beenden oder den SFS Browser zu öffnen, um dort ein Update der signierten Prüfsummen vorzunehmen. Der Dialog wird standardmäßig angezeigt, allerdings höchstens einmal innerhalb von 60 Sekunden. Er kann im Anoubis Main Panel unter der Option Upgrade - Enable Upgrade Message ausgeschaltet werden. (siehe Abbildung 3.4). Manche Distributionen installieren im Rahmen eines Upgrades jede Softwarekomponente einzeln. Wenn dies der Fall ist, kann es vorkommen, dass der Dialog für einen Upgrade Vorgang mehrmals angezeigt wird. Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 37. 3.9. Upgrade Dialogbox 27 Abbildung 3.4: Ein- bzw. Ausschalten der Upgrade Dialogbox Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 38. 28 3. GUI Überblick Das Update der signierten Prüfsummen ist wichtig, da sonst auf diese Dateien nicht mehr zugegriffen werden kann. Diese Zugriffsverweigerung kann die Funktionalität des Systems beeinträchtigen. Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 39. KONFIGURATION • Allgemein • Kontexte und Kontextwechsel • Konfiguration ALF • Konfiguration SFS • Konfiguration Sandbox • Schlüssel • Regelwizard • Spezielle Hinweise
  • 40.
  • 41. Kapitel 4 Konfiguration 4.1 Allgemein Die Konfiguration von Anoubis erfolgt über Policies, die die Berechtigungen für einzelne Anwendungen enthalten. Zusätzlich kann eine Konfigurationsdatei verwendet werden Für jeden Nutzer gibt es zwei voneinander unabhängige Regelsätze: Der Administratorregelsatz mit Priorität 0 Dieser Regelsatz wird vom Administrator vorgegeben und kann vom Nutzer nicht verändert werden. Die darin enthaltenen Re- geln geben den Rahmen vor innerhalb dessen der Nutzer für einzelne Anwendungen noch weitergehende Einschränkungen vornehmen kann. Der Nutzerregelsatz mit Priorität 1 Dieser Regelsatz steht vollständig unter der Kontrol- le des Nutzers selbst. Damit kann dieser Einschränkungen für Anwendungen nach seinen persönlichen Vorstellungen festlegen. 4.1.1 anoubisctl Das Kommandozeilenwerkzeug anoubisctl ermöglicht die manuelle Kontrolle des anou- bisd. • Anzeige des aktiven Regelsatzes Der aktuell in Verwendung befindliche Regelsatz lässt sich mittels des folgenden Auf- rufs anzeigen: anoubisctl dump - Hierbei erfolgt die Ausgabe per default auf stdout. Optional kann die Ausgabe aber auch direkt in eine Datei geschrieben werden, um sie z. B. später manuell zu editie- ren. Der oben genannte Aufruf würde in diesem Fall wie folgt abgeändert: anoubisctl dump /path/to/file Eine beispielhafte Ausgabe eines aktuellen Regelsatzes sei im Folgenden zur Veran- schaulichung angeführt.
  • 42. 32 4. Konfiguration # Policies for UID 1002 PRIO 1 apnversion 1.3 alf { 3: any { 1: ask connect log tcp from any to any port 22 2: default log allow } } sfs { } sandbox { } context { 5: any { 4: context new any } } • Testen und Aktivieren von Regelsatzdateien Nachdem Änderungen an einer (zuvor gespeicherten bzw. erstellten) Regelsatzdatei vorgenommen wurden, kann diese vor der eigentlichen Aktivierung auf syntaktische Korrektheit getestet werden. anoubisctl -n -v load /path/to/file Die Bedeutung der Optionen ist wie folgt: -n teste die Regeln aus der übergebenen Regeldatei, aber aktiviere sie nicht. -v ausführliche Ausgabe Wenn keine Fehlermeldungen erzeugt wurden, so können die Regeln aus der Datei mit dem folgenden Kommando aktiviert werden. anoubisctl load /path/to/file • Weitere Optionen -p admin Ein folgendes load oder dump Kommando bezieht sich auf die Admini- stratorregeln statt auf die Nutzerregeln. Für den Administrator ist dies die Voreinstel- lung. Im Falle von load ist diese Option nur dem Administrator erlaubt. -p user Ein folgendes load oder dump Kommando bezieht sich auf die Nutzerre- geln. Für normale Benutzer ist dies die Voreinstellung. -u uid Ein folgendes load oder dump bezieht sich auf den angegebenen User und nicht auf den Aufrufer des Programms, bei Angabe von -u DEFAULT auf die Default- Policies. Diese Option steht nur dem Administrator zur Verfügung. • Anzeigen der eigenen Prozesse Mit anoubisctl lässt sich auch ermitteln, welche Regelsätze für welche Prozesse aktiv sind. Dazu listet das folgende Kommando die Prozesse des aufrufenden Benutzers auf. anoubisctl ps Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 43. 4.1. Allgemein 33 Zu jedem Prozess werden die verschiedenen Informationen in einer Zeile angezeigt. Eine Ausgabe könnte zum Beispiel folgendermaßen aussehen: pid=1060 cookie=1628530 alf=15:3 sb=59:0 ctx=49:5 /bin/bash pid=1102 cookie=1629191 alf=2:3 sb=6:0 ctx=45:5 secureexec /sbin/anoubisctl Die Informationen bedeuten im Einzelnen: pid die Prozess-ID des Prozesses cookie eine vom anoubisd verwendete, eindeutige ID des Prozesses, welche bis zum nächsten Systemstart garantiert nur einmal verwendet wird alf die IDs der für den Prozess aktiven ALF-Regelsatzblöcke sb die IDs der für den Prozess aktiven Sandbox-Regelsatzblöcke ctx die IDs der für den Prozess aktiven Kontext-Regelsatzblöcke secureexec Wenn dieses Flag angezeigt wird, wird der Prozess wie Setuid- Programme behandelt (ptrace ist eingeschränkt, LD_PRELOAD wird ignoriert). name der Pfad- und Dateiname des Programms contexts Pfad- und Dateiname der Prozesse, in deren Kontexten das Programm aus- geführt wird (wird nur in Verbindung mit -v angezeigt) Bei den Feldern alf, sb und ctx wird vor bzw. nach dem Doppelpunkt jeweils die ID des aktiven Regelsatzblocks des Admin- bzw. des Benutzer-Regelsatzes ausgegeben. Die ID-Nummern finden sich auch in der Ausgabe des Kommandos anoubisctl dump und können so den konkreten Regeln zugeordnet werden. Analog wird beim Feld contexts vor bzw. nach dem Doppelpunkt der Name derjeni- gen Prozesse ausgegeben, in deren Admin- bzw. Benutzer-Kontext der aktuelle Pro- zess läuft. Dies wird im Normalfall identisch mit dem Namen des aktuellen Prozesses sein, es sei denn, der aufrufende Prozess hatte keine entsprechendecontext new Regel. Wird die Option -v zweimal angegeben, werden zu den Dateinamen zusätzlich auch die Prüfsummen der Programmdateien ausgegeben. Mit Hilfe der Option -u kann sich der Root-Benutzer auch die Prozesse von anderen Benutzern anzeigen lassen. Hinweis: Die Informationen zu Prozessen die gestartet wurden, bevor anoubisd lief, können unvollständig sein. • Starten und Stoppen des anoubisd Des Weiteren ermöglicht anoubisctl die Kontrolle des Anoubis-Daemon mittels der folgenden Kommandos: anoubisctl start Der Anoubis-Daemon wird gestartet. anoubisctl stop Der Anoubis-Daemon wird beendet. anoubisctl restart Der Anoubis-Daemon wird neu gestartet. Falls notwendig wird der Neustart so lange verzögert, bis ein gerade laufendes Upgrade beendet ist. anoubisctl reload Die Konfiguration des Anoubis-Daemon wird neu geladen. anoubisctl status Der Status des Anoubis-Daemon wird überprüft und ausgegeben. Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 44. 34 4. Konfiguration • Passphrase des privaten Schlüssels von root zur Verfügung stellen Wenn der mit Hilfe der rootkey Option des Anoubis-Daemon konfigurierte priva- te Schlüssel von root durch eine Passphrase geschützt ist, muss diese dem Anou- bis Daemon mitgeteilt werden, bevor ein Upgrade den privaten Schlüssel verwenden kann. Dies kann wie folgt geschehen anoubisctl passphrase Der Benutzer wird dann nach der Passphrase gefragt, und diese wird dem Anoubis- Daemon mitgeteilt. • Versionsinformationen anzeigen anoubisctl version Es werden nützliche Versionsinformationen ausgegeben. Dazu gehören die Version der Anoubis-Installation, aber auch Versionen von internen Schnittstellen. Im Fehler- fall ist die Ausgabe dieses Kommandos von entscheidener Bedeutung! 4.1.2 sfssig Das Kommandozeilenwerkzeug sfssig dient der Verwaltung von Prüfsummen und Signa- turen des SFS. Bei der einfachen Prüfsummenverwaltung können Dateien zum SFS hinzugefügt, mit dem aktuellen Stand verglichen, aufgelistet und entfernt werden. • Hinzufügen Das Kommando add fügt dem Prüfsummenbestand eine Datei hinzu. $ sfssig add /pfad/zur/datei • Validieren (vergleichen) Der Prüfsummenbestand und der Ist-Zustand können mit dem Kommando valida- te verglichen werden. Stimmen beide miteinander überein, wird Checksum Match ausgegeben. Sollten die Prüfsummen nicht übereinstimmen, so wird Checksum Missmatch zurück gegeben. $ sfssig validate /pfad/zur/datei Checksum Match • Auflisten Die im Prüfsummenbestand zur Überwachung registrierten Dateien können mit dem Kommando list ausgegeben werden. Mit Hilfe verschiedener Filteroptionen können auch verwaiste Einträge aufgefunden werden. $ sfssig list /pfad/zur/ /pfad/zur/datei1 /pfad/zur/datei2 /pfad/zur/datei3 Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 45. 4.1. Allgemein 35 • Entfernen Ein Eintrag kann aus dem Prüfsummenbestand mit dem Parameter del entfernt wer- den. $ sfssig del /pfad/zur/datei • Export Um den eigenen Prüfsummenbestand in eine Datei zu sichern, wird das Kommando export verwendet. $ sfssig export /pfad/zu/dateien/ > export.sfs • Import Der gesicherte Prüfsummenbestand kann mit dem Kommando import wieder in anou- bis eingepflegt werden. $ sfssig import export.sfs Um diese Kommandos auf Signaturen anzuwenden muss die Kommandozeilenoption --sig hinzugefügt werden. $ sfssig --sig add /pfad/zur/datei Sollten keine Schlüssel wie im Kapitel 4.7 beschrieben hinterlegt worden sein, so können diese mittels -k und --cert als Optionen sfssig bekannt gemacht werden. $ sfssig -k /pfad/zum/private.key --cert /pfad/zum/pub.crt --sig add /pfad/zur/datei Um ein Kommando rekursiv auf ein Verzeichnis anzuwenden, wird die Option -r mitgege- ben. Filteroptionen können verwendet werden, um ein Kommando auf eine bestimmte Men- ge an Dateien oder Prüfsummeneinträgen gezielt anzuwenden. Im Folgenden sollen die einzelnen Filteroptionen erläutert werden. • –hassig oder –hassum Diese Filteroptionen wenden das Kommando nur auf die Menge an übergebenen Da- teien an, die einen Eintrag im Prüfsummenbestand haben. Dabei werden von –hassig Einträge mit Signaturen und von –hassum alle nicht signierten Einträge erfasst. • –hasnosig oder –hasnosum Diese Filteroptionen wenden das Kommando nur auf die Menge von übergebenen Dateien an, die keine Einträge im Prüfsummenbestand haben. Die Option –hasnosig betrachtet Dateien ohne Signatur, –hasnosum ohne Prüfsumme. • –orphaned oder –notfile Diese Filteroptionen wenden das Kommando auf Einträge im Prüfsummenbestand an, denen entweder keine Dateien oder Verzeichnisse zugeordnet werden können (–orphaned), oder keine regulären Dateien sind (–notfile). Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 46. 36 4. Konfiguration • –upgraded Diese Filteroption ist nur auf Signaturen (–sig) anwendbar. Sie wendet das Komman- do auf signierte Einträge an, welche von einem Upgrade Prozess verändert wurden. Zu den eben beschriebenen Funktionen, ermöglicht sfssig die Verwaltung von System- Signaturen. System-Signaturen sind Prüfsummen, die in den Extended-Attributes einer Datei abgelegt werden. Hier durch können auch dann Aussagen über systemkritische Dateien getroffen werden, bevor der Anoubis-Daemon gestartet wurde. • Hinzufügen einer System-Prüfsumme zu einer Datei: $ sfssig -A /Pfad/zur/Datei • Aktualisieren einer System-Prüfsumme von einer Datei: $ sfssig -U /Pfad/zur/Datei • Entfernen einer System-Prüfsumme von einer Datei: $ sfssig -R /Pfad/zur/Datei • Anzeigen einer System-Prüfsumme von einer Datei: $ sfssig -L /Pfad/zur/Datei Extended-Attributes können nur mit Administrator-Rechten verändert werden. Mittels Extended-Attributes kann dem Kernel aber auch mitgeteilt werden, bestimmte Dateien bei der Kalkulation von Prüfsummen auszunehmen. • Verifikation einer Datei durch den Kernel verhindern: $ sfssig -S /Pfad/zur/Datei • Verifikation einer Datei durch den Kernel zulassen: $ sfssig -C /Pfad/zur/Datei Weitere Details zu sfssig sind in der Manpage sfssig(8) zu finden. 4.1.3 Playground Mit dem Kommandozeilenwerkzeug playground lässt sich die Playground-Umgebung von Anoubis, wie auch mit xanoubis, steuern und verwalten. Neben dem Starten von Programmen in einem Playground lassen sich aktive und be- endete Playgrounds (sowie die von ihnen angelegten oder modifizierten Dateien) an- zeigen, löschen oder in das System übernehmen. Die folgende Beschreibung der play- ground-Parameter und -Optionen entspricht der zum Programm gehörigen Manpage playground(8): • Ein Programm in einer Playground-Umgebung starten: Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 47. 4.1. Allgemein 37 $ playground start <Kommando> [weitere Optionen] Wenn die gestartete Anwendung ein X-Windows Programm ist, dann wird zusätzlich die Option -X empfohlen. Diese sorgt dafür, daß die Anwendung in einer isolierten X11 Umgebung gestartet wird. Dadurch wird klarer ersichtlich, welche Programme in einer Playground-Umgebung laufen und welchen nicht. Zum Aufbau der X11-Umgebung wird ein Skript in verwendet, das zusammen mit dem xanoubis Paket unter /usr/share/xanoubis/utils/xpgwrapper instal- liert wird. Das Skript ist so gestaltet, dass keine weiteren Anpassungen an die lo- kalen Gegebenheiten notwenig sind, es kann aber Bedarf durch den Administrator editiert werden. Insbesondere kann dort die Displaygröße der X11-Umgebung von 1024x768x24 auf einen anderen Wert abgeändert werden. • Anzeigen aller aktiven oder beendeten Playground-Sitzungen: $ playground list Beispiel: $ playground list PGID USER STATUS FILES TIME COMMAND 1061bc 1000 active 3 2010-09-08 10:45:07 /usr/bin/xterm 105c82 1000 inactive 3 2010-09-07 16:15:36 /bin/bash 105c7b 1000 inactive 2 2010-09-07 15:41:38 /bin/bash PGID ist die Playground-ID, welche für alle folgenden Kommandos anzugeben ist. Der erste Playground in der Liste ist noch aktiv, was bedeutet, dass das Komman- do xterm noch nicht beendet wurde. Das hat zur Folge, dass aus diesem Playground weder Dateien übernommen noch gelöscht werden können. Entsprechend kann auch der gesamte Playground noch nicht gelöscht werden, solange er aktiv ist. Desweite- ren können alle folgenden Playground-Kommandos, vom Anzeigen der darin befind- lichen Dateien abgesehen, nur auf Playgrounds mit dem Status ’inactive’ angewandt werden. • Auflistung neuer oder modifizierter Dateien in einem bestimmten Playground: $ playground files <Playground ID> Beispiel: $ playground files 1061bc PGID DEV INODE FILE 1061bc fc00004 1e /tmp/foo 1061bc fc00004 20 /tmp/bar 1061bc fc00004 42 /tmp/another_example • Übernehmen von Dateien aus einem Playground: $ playground commit [--ignore-recommended] <Playground ID> Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 48. 38 4. Konfiguration Die Option –ignore-recommended bzw. -F erlaubt die Übernahme von Dateien trotz Warnungen von ’empfohlenen’ (recommended) Inhaltsscannern (Virenscanner bei- spielsweise). Ist ein solcher jedoch als required (erforderlich) konfiguriert und gibt dieser eine entsprechende Warnung aus, so ist eine Übernahme der gemeldeten Da- tei(en) in das System nicht mehr möglich. Desweiteren kann man in diesem Zusammenhang die Option -f verwenden, was ein Überschreiben der bereits im System vorhandenen Dateien erlaubt. Für das folgende Beispiel wurde der erste Playground aus der Liste zuerst beendet, d.h. das xterm Terminal-Programm geschlossen, womit der Playground nicht mehr als aktiv geführt wird. Nun versuchen wir die Datei /tmp/foo in das System zu über- nehmen: $ playground commit 1061bc /tmp/foo $ ls /tmp/foo /tmp/foo Das commit-Kommando hat in diesem Beispiel keine Fehlermeldung ausgegeben, was bedeutet, dass die Übernahme von /tmp/foo erfolgreich war. Dies sieht man auch daran, dass der darauf folgende Aufruf des ls-Kommandos die Datei als im System vorhanden darstellt. • Löschen einzelner Dateien aus einer Playground-Sitzung: $ playground delete <Playground ID> <Dateiname> ... Im nächsten Beispiel soll eine einzelne Datei aus dem selben Playground entfernt werden: $ playground delete 1061bc /tmp/another_example UNLINKED /tmp/another_example Wie man aus der UNLINKED-Meldung entnehmen kann, war auch dies erfolgreich. Würde man nun die Dateien dieser Playground-Sitzung erneut auflisten, so wäre nur noch die Datei /tmp/bar vorhanden. Es können Fälle auftreten, bei denen sich zwar Dateien und Verzeichnisse in einem Playground befinden, sie aber nicht mehr physikalisch existieren. Solche Situationen entstehen, wenn Playgrounds Dateien referenzieren, die auf nicht-persistenten Datei- systemen (wie zum Beispeil tmpfs) gespeichert werden. Nach einem Reboot gehen diese Dateien verloren. Um diese Dateien trotzdem aus einem Playground löschen zu können, kann das delete-Kommando mit der Option -f aufgerufen werden. Jetzt erwartet das Kommando keinen Dateinamen mehr sondern das Device- und Inode- Paar (getrennt durch einen Doppelpunkt): $ playground -f delete 1061bc fc00004:42 UNLINKED fc00004:42 • Löschen eines gesamten Playgrounds: $ playground remove <Playground ID> Beispiel: Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 49. 4.2. Kontexte und Kontextwechsel 39 $ playground remove 1061bc UNLINKED /tmp/bar $ playground list PGID USER STATUS FILES TIME COMMAND 105c82 1000 inactive 3 2010-08-10 16:15:36 /bin/bash 105c7b 1000 inactive 2 2010-08-10 15:41:38 /bin/bash Wie man anhand der Ausgabe beider Befehle in dem obigen Beispiel sehen kann, wurde zuerst der Inhalt des Playgrounds, also die Datei /tmp/foo, gelöscht und an- schlie¨ end die gesamte Playground-Sitzung aus der Liste ausgetragen. s Ferner unterstützt das playground-Kommandozeilenwerkzeug, wie anoubisctl und sfssig die Optionen -h, um die möglichen Optionen und Kommandos (bzw. deren Syntax) anzuzeigen, sowie -k und -c, um alternative Schlüssel oder Zertifikate ver- wenden zu können. Analog zum delete-Kommando kann auch hier die Option -f angegeben werden. So- mit kann ein Playground gelöscht werden, obwohl der Dateien enthällt, die nicht mehr referenziert werden können. 4.2 Kontexte und Kontextwechsel Regeln für den Kontextwechsel legen fest, welche Regeln aktiv werden, wenn ein Pro- gramm (mit Hilfe des Systemaufrufs exec(2)) eine andere Anwendung ausführt. 4.2.1 Grundlagen Die Sandbox-, ALF- und Kontext-Regeln in einem Regelsatz bestehen aus einer Reihe von Blöcken. Jeder Block gilt für eine oder mehrere Anwendungen und enthält einen Satz von Regeln. Der Kontext einer Anwendung besteht aus dem Pfad eines ausführbaren Pro- gramms und der zugehörigen Prüfsumme. Er entscheidet in den Modulen ALF und Sand- box sowie wiederum bei den Regeln für Kontextwechsel, welcher Regelblock für diese Anwendung aktiv ist. Um die Regeln für eine Anwendung zu finden, wird für jedes der drei Module (ALF, Sand- box und Kontext) der erste Block gesucht, der in seiner Liste von Anwendungen den aktu- ell gültigen Kontext enthält. Ein spezieller Block, der mit „any” gekennzeichnet wird, findet Anwendung, wenn in einem Modul kein anderer Block vorhanden ist, der zum aktuellen Kontext passt. Kontext-Regeln legen fest, ob beim Ausführen eines Programms der Kontext des Pro- zesses beibehalten wird, oder ob Pfad und Prüfsumme des ausgeführten Programms als Kontext übernommen werden. Der Kontext eines ausgeführten Programms muss also nicht notwendigerweise mit den Daten des ausgeführten Programms übereinstimmen. 4.2.2 Aufbau von Kontext-Regeln Regeln für den Kontextwechsel sind wie folgt aufgebaut: Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 50. 40 4. Konfiguration context { { app } flags { context new { app } context new any } } Die Bedeutung der einzelnen Komponenten ist dabei wie folgt: alf Ein Schlüsselwort, das den ALF-Regelblock einleitet. { app } Eine Liste von Applikationen. Jede Applikation besteht aus ei- nem absoluten Pfadnamen. Zusätzlich kann angegeben wer- den, dass nicht der Pfadname sondern eine unter diesem Pfad- namen hinterlegte (signiert oder unsignierte) Prüfsumme zur Identifikation der Applikation verwendet werden soll. Mehre- re Applikationen werden durch Komma voneinander getrennt. Statt einer Liste von Applikationen, kann auch das spezielle Schlüsselwort „,any” verwendet werden. context new Leitet eine Kontext-Regel ein. any Ein Schlüsselwort, das statt einer Liste von Anwendungen ver- wendet werden kann, um eine Aussage über alle Anwendun- gen zu treffen. flags Mit Hilfe von zwei zusätzliche Flags können besondere Ei- genschaften für Programme aktiviert werden, die mit diesem Kontext laufen: Das Flag nosfs bewirkt, dass Zugriff dieses Prozesses auf das Dataisystem nicht den SFS-Regeln unter- liegen. Das Flag pgforce erzwingt einen neuen Playground für den Prozess, falls dieser nicht bereits in einem Playground läuft. Eine Liste von Applikationen kommt in Kontextregeln an zwei verschiedenen Stellen in ganz unterschiedlicher Bedeutung vor: Unmittelbar vor einem Block Hier geben die Anwendungen in der Liste an, für welche Kontexte dieser Block gilt. In einer context new Regel Hier enthält die Liste alle Anwendungen, bei deren Ausfüh- rung ein neuer Kontext mit den Daten der Anwendung geöffnet wird. Wenn für eine ausgeführte Anwendung keine Regel zutrifft, dann wird der aktive Kontext des aus- geführten Programms beibehalten. 4.2.3 Spezielle Kontextwechsel In einigen speziellen Fällen ist es nicht nur beim Ausführen eines Programms sinnvoll einen Kontextwechsel durchzuführen, sondern auch dann, wenn bestimmte Dateien (in der Regel Shared Libraries) geöffnet werden. Das kann über besondere Kontext-Regeln erreicht werden. Sie unterscheiden sich von ei- ner normalen Kontextregel dadurch, dass das Schlüsselwort new durch das Schlüsselwort open ersetzt wird. Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 51. 4.3. ALF 41 Allerdings erfordert der sichere Umgang mit dieser Art von Kontext-Regeln eine gewisse Sorgfalt und birgt die Gefahr, dass ungewollte Effekte entstehen können. Daher sollten diese Regeln nur dann eingesetzt werden, wenn sie unbedingt notwendig sind. 4.3 ALF Die Konfiguration der ALF geschieht über Policies mit folgendem Aufbau: alf { { app } [ pgonly ] { action operation [log|alert] [family] protocol from address [port x] to address [port x] action [log|alert] capability default [log|alert] action } } Die einzelnen Komponenten haben folgende Bedeutung: app Die Anwendung (siehe A.2.2), für die die Regel gelten soll. Hier kann „any” bzw. ein Pfad mit Prüfsumme angegeben werden. Wird das optionale Flag pgonly angegeben, dann wird die- ser Regelblock nur verwendet, wenn die Anwendung in einem Playground läuft. action Die Aktion, die beim Zutreffen der Regel ausgeführt werden soll. Mögliche Aktionen sind allow (Zulassen der Verbindung), deny (Unterbinden der Verbindung) und ask (Nachfrage an den Benutzer). operation Netzwerkoperation, auf die die Regel zutreffen soll. Mögliche Operationen sind send (Senden von Datenpaketen), receive (Empfangen von Datenpaketen), connect (Aufbauen von Ver- bindungen (TCP/SCTP)) und accept (Annehmen von Verbin- dungen (TCP/SCTP)). log, alert (optional) Optionale Schlüsselwörter mit der Bedeutung, dass das Zutref- fen der Regeln mitprotokolliert werden soll. „alert” hat hierbei eine höhere Priorität als „log”. capability Angabe, ob die Regel Zugriff auf privilegierte Sockets haben soll. Mögliche Werte sind raw (RAW Socket), other (andere Sockets) und all (alle Sockets). In der Regel muss die An- wendung zusätzlich über Root-Rechte verfügen. family (optional) Angabe der Adressfamilie, auf die die Regel zutreffen soll. Mögliche Adressfamilien sind inet für IPv4 und inet6 für IPv6. protocol Angabe des IP-Protokolls, auf das die Regel zutreffen soll. Mögliche Protokolle sind tcp, udp und sctp. from Schlüsselwort, auf das die Angabe einer Absenderinformation folgt. Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 52. 42 4. Konfiguration to Schlüsselwort, auf das die Angabe einer Empfängerinformati- on folgt. address Adressangabe für Absender- und Empfängerinformation. Es wird die übliche Darstellung der gewählten Adressfamilie ge- nutzt, z.B. 127.0.0.1 (IPv4) oder 127::1 (IPv6). Statt einer ein- zelnen Adresse ist auch die Angabe eines Netzwerks mit Hilfe von Netzmasken zulässig. port x Angabe des Netzwerkports für Absender- und Empfängerinfor- mation. Der gültige Wertebereich ist 0 bis 65535. default Schlüsselwort, das eine Default-Regel angibt. Diese Regel wird ausgewählt, wenn keine andere Regel zutrifft. Im folgenden Beispielsregelsatz (gültig in jedem Kontext) werden Verbindungen zu ei- nem Webserver (192.168.0.10) mit Protokollierung zugelassen, Verbindungen zu einem SSH-Server (192.168.0.200) abgelehnt, aber SSH-Verbindungen zu allen anderen Com- putern in dem Subnetz 192.168.0.0/24 zugelassen. Weiterhin können DNS-Anfragen an den DNS-Server 192.168.0.1 gestellt und die Antworten empfangen werden. Ein anderer Computer mit der IPv6-Adresse fe80::200:12ff:fe34:5678 darf SSH-Verbindungen auf den lokalen Rechner aufbauen. Sollte keine der vorherigen Regeln zutreffen, wird der Netz- werkverkehr unterbunden und ein Protokolleintrag erzeugt. alf { any { allow connect log inet tcp from any to 192.168.0.10 port 80 deny connect inet tcp from any to 192.168.0.200 port 22 allow connect inet tcp from any to 192.168.0.0/24 port 22 allow send inet udp from any to 192.168.0.1 port 53 allow receive inet udp from 192.168.0.1 to any port 53 allow accept log inet6 from fe80:0000:0000:0000:0200:12ff:fe34:5678 to any port 22 default log deny } } 4.4 SFS Das Modul SFS bietet jedem Nutzer die Möglichkeit, Prüfsummen zu Dateien in einer vom System verwalteten Datenbank einzutragen. Diese Prüfsummen können optional signiert werden, wenn der Administator den öffentlichen Schlüssel des Nutzers im System hinter- legt hat. Diese Prüfsummen können genutzt werden, um den Zugriff mit Hilfe von SFS-Regeln einzuschränken. Die dazu verwendeten SFS-Regeln sind wie folgt aufgebaut: sfs { path subject valid action invalid action unknown action default path action } Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 53. 4.4. SFS 43 Die Bedeutung der einzelnen Komponenten ist dabei wie folgt: Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.
  • 54. 44 4. Konfiguration sfs Ein Schlüsselwort, das den SFS-Regelblock einleitet. path Entweder das spezielle Schlüsselwort „any” für „ein beliebiger Pfad” oder das Schlüsselwort „path” gefolgt von einem Pfad- präfix, das den Gültigkeitsbereich der Regel auf Dateien unter- halb dieses Pfades einschränkt. subject Dieser Teil einer Regel gibt an, welche Prüfsumme für die Re- gel herangezogen werden soll. Die folgenden Möglichkeiten stehen zur Verfügung: • „self”: Eine vom Nutzer selbst hinterlegte unsignierte Prüfsumme. • „self-signed”: Eine vom Nutzer selbst hinterlegte si- gnierte Prüfsumme • „uid 4711”: Eine vom Nutzer mit der User-ID 4711 hin- terlegte unsignierte Prüfsumme. • „key d5ab3...abcd”: Eine durch einen Schlüssel mit der angegebenen Key-ID signierte Prüfsumme. valid action Die Aktion wird angewandt, falls die Prüfsumme zum Inhalt der Datei passt. invalid action Die Aktion wird angewandt, falls die Prüfsumme nicht zum In- halt der Datei passt. unknown action Die Aktion wird angewandt, falls keine geeignete Prüfsumme im System gefunden wurde. action Eine Aktion besteht aus einer optionalen Anweisung, mit der eine Logmeldung erzeugt werden kann („log” oder „alert”) und der eigentlichen Aktion. Mögliche Aktionen sind: • „allow” Zugriff erlauben • „deny” Zugriff verbieten • „ask” Beim Nutzer rückfragen • „continue” Keine Entscheidung. Die Auswertung wird mit der nächsten Regel fortgesetzt. „default” Schlüsselwort, das eine Default-Regel kennzeichnet. Default- Regeln enthalten lediglich ein Pfadpräfix und eine Aktion. Eine Prüfsumme ist nicht notwendig. Eine Default-Regel findet nur Anwendung, wenn keine andere SFS-Regel anwendbar ist. Ein Beispiel für einen SFS-Regelsatz könnte wie folgt aussehen: sfs { default path / ask path /tmp valid log allow invalid allow unknown allow path /etc uid 0 valid allow invalid log deny unknown ask Anoubis by GeNUA mbH, Kirchheim. All rights reserved / Alle Rechte vorbehalten.