Open Source im professionellen Einsatz

Verwaltung

Der monolithische Aufbau der Policy erschwert die Verwaltung. Änderungen und Erweiterungen erfordern immer Änderungen am Quelltext der Policy und anschließend eine Übersetzung in die Binärform. Derartige Aktionen bleiben dem Admin vorbehalten. Um seine Arbeit zu vereinfachen, dürfen Policies auch boolesche Variablen erhalten. Deren Wert lässt sich während der Laufzeit ändern, um die gerade geltende Policy zu beeinflussen.

So besitzt die Targeted Policy von Fedora Core 4 insgesamt 95 Variablen. Sie definieren, ob SE Linux die entsprechenden Dienste überwacht oder nicht und wie die Überwachung stattfindet. Die Variable »httpd_can_network_connect« etwa entscheidet, ob der Webserver eigene Netzwerkverbindungen aufbauen darf, etwa zu einem Datenbankserver.

Einzelne Admin-Teilaufgaben auf andere User zu delegieren gelingt damit aber nicht. Ein weiteres Problem ist die Trennung in Strict und Targeted: Es ist kaum möglich, Richtlinien zwischen den beiden Policies auszutauschen.

Reference Policy

Diese Probleme bewegten die Firma Tresys [4] dazu, die SE Linux Reference Policy zu entwickeln [3]. Sie verfolgt mehrere Ziele, vorrangig eine hohe Modularität der Policy. Es soll möglich sein, Module zur Laufzeit zu laden, entladen und auszutauschen. Für die Kommunikation unter den Modulen definiert jedes Modul seine Schnittstelle. Um das Verständnis für die Funktionsweise der Module zu verbessern, enthält jedes eine Schnittstellendokumentation. Aus der Referenz Policy lässt sich sowohl eine Strict Policy als auch eine Targeted Policy erzeugen. Fedora Core 5 hat als erste Distribution die neue Technik eingeführt.

Während die Targeted Policy mit »base.pp« und »enableaudit.pp« nur zwei Module besitzt, besteht die Strict Policy aus 149 binären Modulen. Unter Berücksichtigung ihrer Abhängigkeiten lädt und entlädt der Befehl »semodule« diese Module in das Sicherheitssystem.

Ein typisches Problem beim Einsatz von SE Linux ist, die Policy für ein neues Programm zu ergänzen. Diese Erweiterungen gelingen nun auch mit binären Modulen, ohne den kompletten Regelsatz neu an SE Linux zu übergeben. Ein Modul besteht aus bis zu drei Dateien:

  • modul.fc
  • modul.te
  • modul.if

Die FC-Datei enthält die File-Kontexte. Sie definieren, wie SE Linux die einzelnen Dateien labeln soll. Die TE-Datei enthält wie bisher die Type-Enforcement-Regeln. Die IF-Datei ist neu und enthält die Definition der Modulschnittstelle und ihre Dokumentation. Obwohl Administratoren diese Dateien auch komplett von Hand erstellen können, gibt ihnen in Fedora Core 5 das Skript »policygentool« Unterstützung.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 4,5 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Als digitales Abo

Als PDF im Abo bestellen

comments powered by Disqus

Ausgabe 07/2013

Preis € 6,40

Insecurity Bulletin

Insecurity Bulletin

Im Insecurity Bulletin widmet sich Mark Vogelsberger aktuellen Sicherheitslücken sowie Hintergründen und Security-Grundlagen. mehr...

Linux-Magazin auf Facebook