![]() |
|
||||||||||||||||||||
|
|||||||||||||||||||||
|
|||||||||||||||||||||
Marcel Hilzinger
Linux ist ein so genanntes Mehrbenutzersystem. Die meisten Leute stellen sich darunter vor, dass sie mit zwei Mäusen, zwei Monitoren und zwei Tastaturen Ihren Linux-Rechner komplett teilen können. Leider stimmt das nur bedingt, da spezielle Hard- oder Software nötig ist, um zwei Tastaturen gleichzeitig handzuhaben. Es ist aber ohne Weiteres möglich, sich von einem zweiten Rechner an einem Linux-PC anzumelden und dann diesen Rechner zum Arbeiten zu benutzen. Auch können mehrere Benutzer sich einen Linux-Rechner teilen, wenn sie ihn nicht gleichzeitig nutzen möchten.
Linux legt für jeden Anwender ein Verzeichnis unter /home an. Der Name des Verzeichnisses ist mit dem Benutzer- beziehungsweise Loginnamen identisch. Für Bert Maier mit dem Benutzernamen bert lautet das Verzeichnis /home/bert, für Anna Müller mit dem Loginnamen anna lautet der Name des Home-Verzeichnisses /home/anna.
Je nach Distribution darf Anna das Verzeichnis /home/bert öffnen und kann somit schauen, welche Dateien sich darin befinden. Suse Linux und Ubuntu erlauben dies in der Grundeinstellung, lediglich in den Ordner Desktop -- die Dateien des Arbeitsplatzes -- haben fremde Benutzer keine Einsicht. Bei Mandriva Linux dürfen Benutzer nicht in anderen Benutzerverzeichnissen herumstöbern. Das Schreiben in fremden Home-Verzeichnissen erlaubt keine der EasyLinux-Distributionen.
Dateien und Verzeichnisse sind traditionell mit dreierlei Rechten ausgestattet:
Ändern Sie im Dateimanager Konqueror den Ansichtsmodus über den Menüpunkt Ansicht / Anzeigemodus von Symbolansicht zu Textansicht, finden Sie diese drei Rechte und die Buchstaben r, w und x in der Spalte Berechtigungen wieder (Abbildung 1). Der erste Buchstabe d in der markierten Zeile bedeutet, dass es sich um ein Verzeichnis (englisch directory) handelt.
Neben diesen drei Rechten existieren auch drei Rechtegruppen:
Aus diesen drei Rechten und drei Gruppen entsteht das in der Tabelle Rechtematrix aufgeführte Rechtesystem. Die Zeilen, die in der Tabelle untereinander stehen, zeigt Konqueror hintereinander an, so entsteht zum Beispiel die Ausgabe
drwxr-xr-x
Sie bedeutet, dass der Eigentümer sämtliche Rechte auf das Verzeichnis besitzt (rwx), die Mitglieder der gleichen Gruppe und alle Anderen aber nicht in das Verzeichnis schreiben dürfen (r-x). Ein Minuszeichen bedeutet dabei, dass keine Berechtigung besteht. Eine einzelne Stelle bezeichnet man dabei als Bit. Bei Schreibrechten ist somit das w-Bit gesetzt, bei Leserechten das r-Bit und so weiter.
| Rechtematrix | |||
| lesen | schreiben | ausführen | |
| Eigentümer | r/- | w/- | x/- |
| Gruppe | r/- | w/- | x/- |
| Andere | r/- | w/- | x/- |
Erfahrene Linux-Benutzer stellen die Dateiberechtigungen auf der Kommandozeile ein. Details dazu lesen Sie in einem EasyLinux-Artikel aus dem Jahr 2003 [1], der auch online verfügbar ist [2]. Grafisch nehmen Sie die Rechtevergabe am einfachsten im Dateimanager Konqueror vor:
Suse 10.1 und alle Systeme mit KDE 3.5 öffnen über Erweiterte Berechtigungen einen Dialog für eine erweiterte Zugriffskontrolle über Access Control Lists (ACLs, Abbildung 4). Zugeteilte Rechte sind hier mit einem grünen Haken markiert. Ein Klick auf einen Haken entfernt die entsprechende Berechtigung. Um Rechte zu vergeben, klicken Sie auf die leere Fläche unter den Spalten r w x. Möchten Sie von den ACLs Gebrauch machen, wählen Sie Eintrag hinzufügen und legen dann einen Benutzer oder eine Gruppe an. Details zu den erweiterten Berechtigungen lesen Sie im Kasten KDE und ACL.
| KDE und ACL |
|
Über so genannte Access Control Lists (Zugriffslisten) lassen sich nicht nur Rechte für die drei Gruppen Benutzer, Gruppe und Sonstige einstellen, sondern auch feinere Skalierungen vornehmen. So können zum Beispiel auch einzelnen Benutzern Rechte eingeräumt werden, die sich in keiner speziellen Gruppe befinden. Angenommen, die Datei geheim.txt gehört dem Benutzer bert und der Gruppe users und besitzt die Rechte -rw-------, ist sie also nur für bert les- und schreibbar. Über einen entsprechenden ACL-Eintrag kann nun der Eigentümer der Datei oder der Systemadministrator auch anna Zugriff darauf gewähren, ohne dass sich dadurch die Anzeige in Konqueror verändern würde. Lediglich ein Pluszeichen hinter der detaillierten Ausgabe weist auf die erweiterten Rechte hin (Abbildung 5). ACLs benutzt allerdings nur Suse Linux in der Standardeinstellung. Bei Ubuntu und Mandriva Linux sind diese nicht aktiv. Unter Suse Linux 10.0 mit KDE 3.4 ist es zudem noch nicht möglich, die erweiterten Zugriffsrechte in Konqueror einzurichten. Hier müssen Sie die Rechte auf der Konsole mit dem Befehl setfacl einrichten, zum Beispiel setfacl -m u:anna:rw geheim.txt um der Benutzerin anna Lese- und Schreibzugriff auf die Datei geheim.txt zu gewähren. Die Rechte einer Datei mit erweiterten Zugriffsrechten zeigt der Befehl getfacl dateiname, zum Beispiel: marcel@kim:~> getfacl geheim.txt # file: geheim.txt # owner: marcel # group: users user::rw- user:anna:rw- group::r-- mask::rw- other::r-- Abb. 5: Das Pluszeichen hinter den Dateiberechtigungen deutet auf ACL-Einstellungen hin: Die Datei "geheim.txt" kann demnach auch von anderen Benutzern gelesen/geändert werden. |
Neben den bisher gezeigten Grundrechten existieren auch einige Sonderrechte. Diese finden Sie im Rechtedialog von Konqueror unter Erweiterte Eigenschaften / Spezialattribut. Schauen Sie sich zum Beispiel die Rechte des Verzeichnisses /tmp in der Textansicht an, zeigt Konqueror als letztes Zeichen kein x an, sondern ein t. Es markiert das so genannte Sticky Bit. Dateien in diesem Ordner können nur vom Eigentümer und vom Systemadministrator gelöscht oder umbenannt werden, auch wenn andere Benutzer Schreibrechte auf das Verzeichnis besitzen. Wenn also bert im Verzeichnis /tmp eine Datei adressen.txt ablegt und diese für alle les- und schreibbar macht, kann zwar anna den Inhalt dieser Datei ändern, sie darf sie aber nicht umbenennen oder löschen. Das Sticky Bit eignet sich deshalb sehr gut für Verzeichnisse, in denen Sie Anderen Schreibrechte geben möchten, aber Ihre Dateien zugleich in Sicherheit wissen möchten.
Um für ein Verzeichnis diese Berechtigung einzustellen, klicken Sie im Dateimanager Konqueror mit der rechten Maustaste auf das Verzeichnis, wählen Eigenschaften / Berechtigungen und kreuzen dann die Option Nur Eigentümer kann den Inhalt des Ordners umbenennen oder löschen an. Die Funktion des Sticky Bits können Sie sich damit merken, dass das Wort auf Deutsch klebrig bedeutet. Dateien bleiben also am Benutzer kleben, solange er diese nicht selbst löscht.
Zwei weitere praktische Einstellungen erlauben das UID- (User ID) und das GID-Bit (Group ID). Setzen Sie bei einem Verzeichnis das UID-Bit, dann bekommt der Besitzer des Ordners automatisch sämtliche Rechte auf sämtliche Dateien und Unterverzeichnisse im diesem Ordner. Legt also anna in einem Verzeichnis von bert eine neue Datei an, kann bert mit ihr nach Belieben schalten und walten. Die ausführliche Textansicht zeigt zwar als Eigentümer zunächst noch anna an, sobald jedoch bert die Datei ändert, gehört sie automatisch ihm. Mit dem GID-Bit lässt sich analog die Gruppenzugehörigkeit für alle neu angelegten Dateien im Voraus bestimmen. Hier wird die Gruppenzugehörigkeit jedoch schon beim Erstellen einer Datei verändert. Das UID-Bit erkennen Sie an der Option s an vierter Stelle, zum Beispiel drwsr-xr-x. Beim GID-Bit ist an siebter Stelle ein s zu sehen, zum Beispiel drwsr-sr-x
Eine Sonderstellung beim UID- und GID-Bit nehmen ausführbare Dateien ein. Ist hier das Bit gesetzt, bedeutet das, dass die Datei beziehungsweise das Programm mit den Berechtigungen des Eigentümers startet. Im Normalfall startet ein Programm immer mit den Rechten des Ausführenden, wie das folgende Beispiel erläutert.
Die Benutzerin anna möchte gerne von bert den Inhalt des Verzeichnisses Geheim sichern lassen. Sie will ihm aber keine Leserechte auf das Verzeichnis geben. Dazu schreibt anna ein kleines KDE-Programm Kbackup. Solange das UID-Bit nicht gesetzt ist, funktioniert zwar die Anwendung bei anna, weil sie ausreichende Berechtigungen aufweist, aber nicht bei bert. Mit dem UID-Bit läuft der Prozess immer mit den Rechten von anna ab. Somit kann auch bert das Backup durchführen. Diesen Mechanismus benutzt zum Beispiel auch das Programm /usr/bin/password, mit dessen Hilfe jeder Benutzer in die Datei /etc/shadow schreiben kann, um sein Passwort zu ändern. Ohne das Programm passwd hat einzig und allein der Systemadministrator Zugriff auf die Datei. Auf normale Shell-Skripte hat das UID-Bit keine Auswirkung: hier verhindert Linux aus Sicherheitsgründen das Ausführen solcher Skripte. (mhi)
| Infos |
|
[1] Elisabeth Bauer: "Alles, was recht ist", EasyLinux 09/2003, S. 71.
[2] Dateirechte ändern: http://www.easylinux.de/2003/09/071-guru-chmod/index.html |
Dieser Online-Artikel kann Links enthalten, die auf nicht mehr vorhandene Seiten verweisen. Wir ändern solche "broken links" nur in wenigen Ausnahmefällen. Der Online-Artikel soll möglichst unverändert der gedruckten Fassung entsprechen.
Druckerfreundliche Version |
Feedback zu dieser Seite |
Datenschutz |
© 2012 Linux New Media AG |
Last modified: 2008-11-05 17:01
[Linux-Magazin]
[LinuxUser]
[Linux-Community]
[Admin-Magazin]
[Ubuntu User]
[Smart Developer]
[Linux Events]
[Linux Magazine]
[Ubuntu User]
[Admin Magazine]
[Smart Developer]
[Linux Magazine Poland]
[Linux Community Poland]
[Linux Magazine Brasil]
[Linux Magazine Spain]
[Linux Technical Review]