Ein häufiges Problem stellt zum Beispiel bei dem Betrieb eines Webservers die Auslagerung der Webseiten. Häufig erzeugt der Administrator ein eigenes Verzeichnis als DocumentRoot (z.B. /web) in dem die Webseiten gespeichert werden. Dieses Verzeichnis erhält per Definition zunächst den File-Security-Context system_u:object_r:default_t:s0. Die Policy für den Apache erlaubt es ihm nicht auf diese Dateien zuzugreifen. Anstelle nun dem Webserver zu erlauben, auf diese zusätzlichen Security-Contexts zuzugreifen, sollten diese Dateien so gelabelt werden, dass die vorhandene Policy den Zugriff erlaubt.
Das gelingt Ihnen mit dem Kommando semanage. Das Kommando unterstützt hierbei reguläre Ausdrücke. Damit nun jede Datei in diesem Verzeichnis und weiteren Unterverzeichnissen und das Verzeichnis /web selbst den richtigen Context erhalten, setzen Sie den folgenden Befehl ab:
[root@supergrobi policy]# semanage fcontext --add --type httpd_sys_content_t '/web(/.*)?'Dies setzt sowohl für das Verzeichnis als auch seinen Inhalt den Context. Wenn Sie nun mit restorecon den Security-Context reparieren, erhält das Verzeichnis den richtigen Security-Context
[root@supergrobi policy]# restorecon -R /web [root@supergrobi policy]# ls -Zd /web drwxr-xr-x root root system_u:object_r:httpd_sys_content_t /web
Ralf Spenneberg 2007-11-13