Der Kiosk-Modus unter KDE [1] macht aus öffentlich zugänglichen Desktop-PCs schon seit dem Sommer 2005 reine Surfstationen oder andere zweckgebundene Terminals mit grafischer Oberfläche, die den Benutzer in einem konfigurierbar eng ausgelegten Käfig gefangen halten. Beispielsweise finden User eine Oberfläche vor, die die Kommandozeile unerreichbar macht und nur ausgewählte Anwendungen in den Menüs präsentiert. Mit dem so genannten Lockdown-Editor Pessulus [2] und dem Profileditor Sabayon [3] richten jetzt auch Gnome-Administratoren solche abgesicherten Desktops per grafischer Oberfläche ein.
Gconf steuert
Schon seit Ausgabe 2.0 speichert Gnome die Desktop-Einstellungen in XML-Dateien, die das Gconf-System verwaltet. Beim Start liest Gnome zunächst die Konfigurationsvorgaben des Systems ein, gewöhnlich liegen sie unter »/etc/gconf«, bei Suse unter »/etc/opt/gnome/ gconf«. Dann ergänzt es sie mit den im Verzeichnis ».gconf« im Homeverzeichnis des jeweiligen Benutzers gespeicherten Dateien. Dabei genießen wie üblich die Benutzereinstellungen Priorität vor Systemvorgaben.
Gconf erlaubt es dem Administrator jedoch, Gconf-Schlüssel zu definieren, die kein Benutzer überschreiben kann. Sie liegen bei den meisten Distributionen im Verzeichnis »/etc/gconf/gconf.xml.mandatory«. Bislang waren die Mandatory Keys (obligatorische Werte) vor allem dazu geeignet, das Erscheinungsbild der Oberfläche festzulegen, und zwar vom Menü über das Hintergrundbild bis zur Konfiguration einzelner Anwendungen.
Gnome bringt mit Version 2.14 neue Lockdown-Schlüssel in Gconf ein, die einzelne Anwendungen für den User sperren. Sie liegen im Gconf-XML-Baum unter »/desktop/gnome/lockdown« und deaktivieren beispielsweise die Tastenkombination [Alt]+[F2] zur Ausführung eines Kommandozeilenbefehls, blockieren den Drucker oder verbieten den Schreibzugriff auf die Festplatte.
Auch das Gnome-Panel unterliegt auf Wunsch Einschränkungen. Gconf unterbindet entweder jede Veränderung der voreingestellten Panel-Konfiguration oder nur das Hinzufügen oder Entfernen einzelner Applets. Darüber hinaus ermöglicht es Gnome 2.14, dem Benutzer das Beenden der Gnome-Sitzung zu verbieten oder den Bildschirm automatisch zu sperren, wenn sich der Bildschirmschoner aktiviert.
Alles mit Komfort
Mit dem Texteditor XML-Dateien bearbeiten gehört nicht zu den Lieblingsbeschäftigungen der meisten Admins, auch der Gconf-Editor gilt nicht gerade als übersichtlich. Das in Python geschriebene grafische Frontend Pessulus vereinfacht diese Arbeit jedoch wesentlich (siehe Abbildung 1).
Abbildung 1: Der Lockdown-Editor Pessulus aktiviert Gconf-Schlüssel, die bestimmte Gnome-Funktionen für Benutzer sperren.
Pessulus präsentiert eine übersichtliche Liste der Sperrfunktionen. Per Mausklick wählt der Administrator jene aus, auf die Benutzer verzichten müssen. Im Panel-Abschnitt markiert er aus den installierten Applets jene, die dem Anwender vorbehalten bleiben.
Darüber hinaus konfiguriert Pessulus auch Epiphany, den Standard-Webbrowser von Gnome. Darin schränkt das Programm einzelne Funktionen wie Javascript ein und blockiert Protokolle. Auf Wunsch verhindert es auch, dass der Benutzer Epiphany beendet, oder zwingt den Browser in den Vollbildmodus, um eine einfache Surfstation für öffentliche Terminals zu schaffen.
Startet Pessulus mit normalen Benutzerrechten, lässt sich der aktuelle Account mit den gewählten Einschränkungen versehen. Dieses Vorgehen erscheint zunächst sinnlos, da der Benutzer diese Änderungen einfach wieder rückgängig machen könnte. Das trifft allerdings nicht zu, wenn beispielsweise Epiphany nur im Vollbildmodus sichtbar und der Zugang zu allen anderen Programmen gesperrt ist. In solchen Fällen reicht Pessulus also aus, um ein beschränktes Desktop-Benutzerkonto zu erstellen und daneben gewöhnliche Accounts auf einem System zuzulassen.