Das Projekt grsecurity ist leider nur ein Ein-Mann-Projekt. Dadurch gab es in der Vergangenheit bereits einmal ein Problem. Am 01.06.2006 gab der Entwickler bekannt, das Projekt bis zum 07.06.2006 einzustellen, da er verschuldet sei und die Sponsoren des Projektes ihn nicht finanziell unterstützen würden. Am 09.06.2006 war das Projekt dank neuer Sponsoren und Spenden doch gerettet worden. Jedoch zeigt dies, wie wacklig die Unterstützung sein kann. Die Administration des RBAC Systems erfolgt mit dem Befehl gradm. Zusätzlich ist eine Datei /etc/grsec/policy erforderlich, in der das grsecurity RBAC-System konfiguriert wird. Im folgenden ist ein Auszug aus einer Beispieldatei angegeben:
role admin sA
subject / rvka
/ rwcdmlxi
role default G
role_transitions admin
subject /
/ r
/opt rx
/home rwxcd
/mnt rw
/dev
/dev/grsec h
/dev/urandom r
/dev/random r
...
subject /usr/bin/ssh
/etc/ssh/ssh_config r
Hier sind nun zwei Rollen dargestellt. Nach der Anmeldung als Benutzer
arbeiten alle Anwender in der Rolle default. In dieser Rolle
sind bestimmte Zugriffe nur erlaubt. Der Zugriff mit beliebigen
Befehlen (subject /) ist auf dem gesamten Rechner (/) zunächst nur mit
Leserechten (r) erlaubt. Das Verzeichnis /opt darf gelesen und
geschrieben werden. Das Verzeichnis /dev/grsec wird vor allen
Prozessen versteckt (hidden, h). Wird das Kommando
/usr/bin/ssh aufgerufen, darf es lediglich die Datei
/etc/ssh/ssh_config lesen. Mehr Rechte erhält ein Benutzer
nur, wenn er in die Rolle admin wechselt. Dieser Rollenwechsel
ist erlaubt (role_transitions admin. Die Rolle admin erfordert eine Authentifizierung bei dem Rollenwechsel mit gradm
-a admin. Dann hat der Benutzer uneingeschränkten Zugriff. Das hier
verwendete Kennwort wird mit gradm -P admin gesetzt und muss
nicht mit dem root-Kennwort übereinstimmen.
Interessant ist die Tatsache, dass grsecurity auch die Netzwerkverbindungen überwachen kann. Mit einem Patch kann hier auch das Kommando iptables genutzt werden.
Ralf Spenneberg 2007-11-13