NOTE: CentOS Enterprise Linux is built from the Red Hat Enterprise Linux source code. Other than logo and name changes CentOS Enterprise Linux is compatible with the equivalent Red Hat version. This document applies equally to both Red Hat and CentOS Enterprise Linux.
Linuxtopia - CentOS Enterprise Linux Rerenzhandbuch- Dateien in Bezug auf SELinux
Der folgende Abschnitt beschreibt SELinux Konfigurationsdateien und in Bezug stehende Dateisysteme.
21.2.1. Das /selinux/ Pseudo-Dateisystem
Das /selinux/ Pseudo-Dateisystem beinhaltet Befehle, welche am h�ufigsten vom Kernel-Subsystem gebraucht werden. Diese Art von Dateisystem ist �hnlich dem /proc/ Pseudo-Dateisystem.
In den meisten F�llen muss diese Komponente im Vergleich zu anderen SELinux-Dateien und Verzeichnissen nicht von Administratoren oder Benutzern manipuliert werden.
Das folgende Beispiel zeigt Musterinhalte im Verzeichnis /selinux/:
Zum Beispiel das Ausf�hren des Befehls cat auf der Datei enforce legt entweder eine 1 f�r den Enforcing Mode oder 0 f�r den Permissive Mode offen.
21.2.2. SELinux Konfigurationsdateien
Die folgenden Abschnitte beschreiben SELinux Konfigurations- und Policy-Dateien und verwandte Dateisysteme im Verzeichnis /etc/.
21.2.2.1. Die /etc/sysconfig/selinux Konfigurationsdatei
Es gibt 2 Arten SELinux unter Red Hat Enterprise Linux zu konfigurieren: mit Hilfe des Security Level Configuration Tool (system-config-securitylevel) oder manuell durch Bearbeiten der Konfigurationsdatei (/etc/sysconfig/selinux).
Die /etc/sysconfig/selinux Datei ist die prim�re Konfigurationsdatei zum Aktivieren oder Deaktivieren von SELinux sowie auch zum Festlegen der jeweiligen Policy, die auf dem System durchgef�hrt werden soll und zum Festlegen der Art und Weise, wie dies geschehen soll.
Hinweis
/etc/sysconfig/selinux beinhaltet einen symbolischen Link zur eigentlichen Konfigurationsdatei /etc/selinux/config.
Im folgenden wird das vollst�ndige Subset an Optionen, die zur Konfiguration erh�ltlich sind, beschrieben:
SELINUX=<enforcing|permissive|disabled> — Definiert den Top-Level Status von SELinux auf einem System.
enforcing — Die SELinux Security Policy enth�lt den Sicherheitsmodus "Enforcing".
Permissive — Das SELinux System gibt Warnungen aus, gew�hrt jedoch alle Zugriffe. Dies ist n�tzlich zu Debugging- und Troubleshooting-Zwecken. Im Permissive Mode, werden mehr Verst��e protokolliert, da Subjekte mit deren Zugriffen fortfahren k�nnen, wobei diese Zugriffe im Enforcing Mode verweigert werden w�rden. Zum Beispiel die Traversierung eines Verzeichnisbaums bewirkt mehrfache avc: denied-Mitteilungen f�r jede der gelesenen Verzeichnisstufen, wobei ein Kernel im Enforcing Mode die urspr�ngliche Traversierung verweigert h�tte und dadurch das Entstehen weiterer avc: denied-Mitteilungen verhindert h�tte.
disabled — SELinux ist v�llig deaktiviert. SELinux Hooks sind freigemacht vom Kernel und das Pseudo-Dateisystem ist unregistriert.
Tipp
S�mtliche durchgef�hrten Aktivit�ten, w�hrend SELinux deaktiviert ist, k�nnen zur Folge haben, dass das Dateisystem nicht mehr l�nger den angemessenen, wie durch die Policy festgelegten Security Context besitzt. Wenn Sie vor dem Aktivieren den Befehl fixfiles relabel ausf�hren, so relabelt SELinux das Dateisystem, sodass das aktivierte SELinux einwandfrei arbeitet. F�r weitere Informationen dazu, verweisen wir auf die fixfiles(8) man-Seite.
Hinweis
Zus�tzliche wei�e Leerstellen am Ende der Konfigurationszeile oder als Extra-Zeilen am Ende der Datei, k�nnen ein unerwartetes Verhalten hervorrufen. Um sicher zu gehen, schlagen wir vor, unn�tige wei�e Leerstellen zu entfernen.
SELINUXTYPE=<targeted|strict> — Legt fest, welche Policy von SELinux gegenw�rtig durchgesetzt wird.
targeted — Nur Targeted Netzwerk-Daemons werden gesch�tzt.
Wichtig
Folgende Deamons werden in der Standard-Targeted-Policy gesch�tzt: dhcpd, httpd (apache.te), named, nscd, ntpd, portmap, snmpd, squid und syslogd. Das restliche System l�uft in der unconfined_t Dom�ne ab.
Die Policy-Dateien f�r diese Daemons k�nnen in /etc/selinux/targeted/src/policy/domains/program gefunden werden. �nderungen werden vorbehalten, sobald neuere Versionen von Red Hat Enterprise Linux freigegeben werden.
Policy Enforcement kann f�r diese Daemons ein- und abgeschalten werden, indem Boolesche Werte mittels Security Level Configuration Tool kontrolliert werden k�nnen. (system-config-securitylevel). Das �ndern des Booleschen Wertes (true/false = wahr/falsch) eines Daemons schaltet die regul�re Verarbeitung der Richtlinien, wie zum Beispiel init f�r die Initialisierung von dhcpd f�r die Domaenen unconfined_t bis zur definierten Domaene in dhcpd.te aus. Die Dom�ne unconfined_t erlaubt Subjekten und Objekten mit diesem Security Context unter Standard-Linux-Security zu laufen.
strict — Voller SELinux-Schutz f�r alle Daemons. Security contexts sind f�r alle Subjekt und Objekte festgelegt. Jeder einzelne Ablauf wird vom Policy Enforcement Server bearbeitet.
21.2.2.2. Das /etc/selinux/-Verzeichnis
Das /etc/selinux/-Verzeichnis ist der prim�re Speicherort f�r alle Policy-Dateien sowie auch der Hauptkonfigurationsdatei.
Das folgende Beispiel zeigt Musterinhalte des /etc/selinux/-Verzeichnis:
Die beiden Unterverzeichnisse strict/ und targeted/ sind die spezifischen Verzeichnisse, in denen die Policy-Dateien des selben Namens (zB. strict und targeted) enthalten sind.
F�r weitere Informationen �ber SELinux-Policy und Policy-Konfiguration siehe Red Hat SELinux Policy Writing Guide.
21.2.3. SELinux-Utilities
Die folgenden sind einige der am h�ufigsten verwendeten SELinux-Utilities:
/usr/bin/setenforce — Modifiziert den SELinux-Modus in Echtzeit. Durch das Ausf�hren von setenforce 1, wird SELinux in den Enforcing Mode gebracht. Durch das Ausf�hren von setenforce 0, wird SELinux in den Permissive Mode gebracht. Um SELinux tats�chlich zu deaktivieren, m�ssen Sie entweder den Parameter in /etc/sysconfig/selinux setzen oder den Parameter selinux=0 an den Kernel �bergeben; entweder in /etc/grub.conf oder zur Bootzeit.
/usr/bin/sestatus -v — Erh�lt den detaillierten Status eines Systems, auf dem SELinux ausgef�hrt wird. Das folgende Beispiel zeigt einen Auszug aus dem sestatus-Output:
/usr/bin/newrole — F�hrt eine neue Shell in einem neuen Context oder einer neuen Rolle aus. Policy muss den Rollenwechsel erlauben.
/sbin/restorecon — Legt den Security Context von einer oder mehreren Dateien fest, indem die erweitereten Attribute mit der entsprechenden Datei oder dem entsprechenden Security Context gekennzeichnet werden.
/sbin/fixfiles — �berpr�ft oder korrigiert die Security Context Datenbank auf dem Dateisystem.
F�r weitere Informationen verweisen wir auf die man-Seiten zu diesen Hilfsprogrammen.
F�r weitere Informationen zu allen bin�ren Utilities siehe die setools- oder policycoreutils-Paketinhalte, indem Sie rpm -ql <package-name> ausf�hren, wobei <package-name> der Name des spezifischen Paketes ist.