Modulname: mac_mls.ko
Parameter für die Kernelkonfiguration: options
MAC_MLS
Bootparameter: mac_mls_load="YES"
Die Richtlinie mac_mls(4) kontrolliert die Zugriffe zwischen Subjekten und Objekten, indem sie den Informationsfluß strengen Regeln unterwirft.
In MLS Umgebungen wird jedem Subjekt oder Objekt ein „Freigabe“-Level zugeordnet, und diese werden wiederum zu einzelnen Verbünden zusammengefaßt. Da diese Freigabe- oder Anfälligkeits-Level Zahlen größer 6000 erreichen können, ist es für jeden Systemadministrator eine undankbare Aufgabe, jede Entität von Grund auf zu konfigurieren. Zum Glück gibt es 3 „instant“ Labels, die in der Richtlinie zur Anwendung bereit stehen.
Diese drei Labels heißen mls/low
,
mls/equal
und mls/high
. Da sie in
den Manpages mac_mls(4) ausführlich beschrieben werden, gibt
es hier nur einen kurzen Abriß:
Das Label mls/low
ist eine niedrige
Einstellung, die von allen anderen dominiert werden darf. Alles, was
mit mls/low
versehen wird, hat ein niedriges
Freigabe-Level und darf auf keine Informationen zugreifen, denen ein
höheres Freigabe-Level zugeordnet wurde. Einem Objekt mit
diesem Label kann außerdem keine Information durch ein Objekt
höherer Freigabe übergeben werden, es kann also auch nicht
durch solche Objekte editiert oder überschrieben werden.
Das Label mls/equal
wird an Objekte vergeben,
die von dieser Richtlinie ausgenommen werden sollen.
Das Label mls/high
verkörpert das
höchstmögliche Freigabe-Level. Objekte, denen dieses Label
zugeordnet wird, dominieren alle anderen Objekte des Systems.
Trotzdem können sie Objekten mit einem niedrigeren
Freigabe-Level keine Informationen zuspielen.
MLS bietet:
Eine hierarchische Sicherheitsschicht und Zuordnung nichthierarchischer Kategorien;
Feste Regeln: kein „Read-Up“, kein „Write-Down“ (ein Subjekt kann nur Objekte gleicher oder niedrigerer Stufe lesen, und es kann nur Objekte gleicher oder höherer Stufe schreiben);
Geheimhaltung (indem unangemessene Offenlegung von Daten verhindert wird);
Eine Basis zum Entwerfen von Systemen, die Daten verschiedener Vertraulichkeitsebenen gleichzeitig handhaben sollen (ohne das geheime und vertrauliche Informationen untereinander ausgetauscht werden können).
Nachfolgend werden die sysctl
-Variablen
vorgestellt, die für die Einrichtung spezieller Dienste und
Schnittstellen vorhanden sind.
security.mac.mls.enabled
schaltet die
Richtlinie MLS ein (oder aus).
security.mac.mls.ptys_equal
sorgt dafür,
dass während der Initialisierung alle pty(4)-Geräte
als mls/equal
gekennzeichnet werden.
security.mac.mls.revocation_enabled
sorgt
dafür, dass die Zugriffsrechte von Objekten wieder
zurückgesetzt werden, nachdem deren Label vorübergehend auf
ein niedrigeres Freigabe-Level geändert wurde.
security.mac.mls.max_compartments
gibt die
maximale Anzahl von Verbünden an. Im Prinzip ist es die
höchste Nummer eines Verbundes auf dem System.
Um die Labels der MLS Richtlinie zu bearbeiten verwendet man setfmac(8). Um ein Objekt zu kennzeichnen, benutzen Sie folgendes Kommando:
#
setfmac mls/5 test
Um das MLS-Label der Datei
test
auszulesen, verwenden Sie dieses
Kommando:
#
getfmac test
Dies ist eine Zusammenstellung der Merkmale von
test
. Ein anderer Ansatz ist, für diese
Richtlinie eine Konfigurationsdatei in /etc
abzulegen, die alle Informationen
enthält und mit der dann das Kommando setfmac
gefüttert wird. Diese Vorgehensweise wird erklärt, nachdem
alle Richtlinien vorgestellt wurden.
Mit dem Richtlinienmodul Multi-Level Security
bereitet sich ein Administrator darauf vor, den Fluß
vertraulicher Informationen zu kontrollieren. Beim Starten der
Richtlinie ist immer mls/low
voreingestellt -
alles kann auf alles zugreifen. Der Administrator ändert dies
während der eigentlichen Konfiguration, indem er die
Vertraulichkeit bestimmter Objekte erhöht.
Jenseits der drei Grundeinstellungen des Labels kann der
Administrator einzelne Nutzer oder Nutzergruppen nach Bedarf
zusammenschließen und den Informationsaustausch zwischen diesen
gestatten oder unterbinden. Es ist sicher eine Vereinfachung, die
Freigabe-Level mit Begriffen wie vertraulich
,
geheim
oder streng geheim
zu
bezeichnen. Einige Administratoren erstellen einfach verschiedene
Gruppen auf der Ebene von gegenwärtigen Projekten. Ungeachtet der
Herangehensweise bei der Klassifizierung muß ein gut durchdachter
Plan existieren, bevor eine derart einengende Richtlinie umgesetzt
wird.
Exemplarisch für die Anwendung dieses Moduls bzw. dieser Richtlinie seien angeführt:
Ein E-Commerce Webserver
Ein Dateiserver, der vertrauliche Informationen einer Firma oder eines Konzerns speichert
Umgebungen in Finanzeinrichtungen
Der unsinnigste Einsatzort für diese Richtlinie wäre ein Arbeitsplatzrechner mit nur zwei oder drei Benutzern.
Wenn Sie Fragen zu FreeBSD haben, schicken Sie eine E-Mail an
<de-bsd-questions@de.FreeBSD.org>.
Wenn Sie Fragen zu dieser Dokumentation haben, schicken Sie eine E-Mail an
<de-bsd-translators@de.FreeBSD.org>.