Computer-Masters.de > Artikel > Grundlagen > Rechteverwaltung mit CHMOD in UNIX Systemen

Rechteverwaltung mit CHMOD

UNIX CHMOD Rechteverwaltung rwx

Unter UNIX-Betriebssystemen lassen sich Rechte ganz einfach mit CHMOD verwalten. Diese Rechteverwaltung funktioniert nach einem sehr einfachen Prinzip, sodass jeder Anwender in der Lage ist einzelne Dateien oder Verzeichnisse mit Rechten zu versehen. Dieses System wird hier kurz vorgestellt. Erfahren Sie weiterhin in einem anderen Artikel, wie man die Rechte in der übersichtlichen und einprägsamen Oktalschreibweise darstellt.

Grundlegende Rechte

Zunächst muss festgehalten werden, welche Rechte ein Nutzer überhaupt auf eine Datei oder ein Verzeichnis haben kann. Hier gilt es genau drei verschiedene Rechte zu unterscheiden, die bezogen auf Dateien oder Verzeichnisse unterschiedliche Bedeutung haben:

Recht Bedeutung Dateien Verzeichnisse
r Lesen Der Nutzer darf lesend auf die Datei zugreifen und deren kompletten Inhalt auslesen. Inhalt des Verzeichnisses kann gelesen werden, sprich Dateien und Unterverzeichnisse können aufgelistet werden.
w Schreiben Der Nutzer darf den Inhalt der Datei komplett überschreiben bzw. schreibend verändern. Nutzer darf weitere Dateien und Verzeichnisse anlegen oder löschen.
x Ausführen Der Nutzer darf die Datei ausführen. Nutzer darf das Verzeichis betreten.

Rechtegruppen

Ein weiterer wichtiger Punkt bevor man Rechte setzen sollte, ist sich Gedanken über die verschiedenen Nutzergruppen zu machen und welche Rechte man diesen geben will. Je nach Anwendungsgebiet bzw. der Umgebung in der man sich befindet kann das von essentieller Wichtigkeit für die Sicherheit der Daten sein. Dazu später mehr. Zunächst die drei grundlegend zu unterscheidenden Gruppen:

 

Nutzer Der Benutzer selbst, dem die Dateien/Verzeichnisse gehören und der Dateiberechtigungen vergeben darf. Dies ist meist der Fall, wenn der Benutzer die Datei/das Verzeichnis selbst angelegt hat.
Gruppe Ebenso wie einem Nutzer kann eine Datei/ ein Verzeichnis einer Nutzergruppe zugeordnet werden. Diese Zuordnung findet meist in der Umgebung eines lokalen Netzwerks Anwendung.
Öffentlichkeit Mit der Öffentlichkeit ist tatsächlich der Rest der Welt gemeint, der irgendwie Zugriff auf die Dateien und Verzeichnisse erhalten könnte. Dies mag zunächst unlogisch klingen, bedenkt man allerdings, dass UNIX-Systeme sehr häufig als Webserver verwendet werden liegt es nahe, dass dieser Nutzergruppe eine sehr große Bedeutung zukommt.

 

Ein Nutzer kann sich also selbst Rechte an seinen eigenen Dateien oder Verzeichnissen nehmen. Das ist sinnvoll, um z.B. wichtige Systemdateien zu schützen, sodass man diese nicht versehentlich überschreibt oder löscht.

Rechte an Dateien und Verzeichnissen  einer Gruppe zu geben macht in einer Arbeitsumgebung sinn in der von mehreren Computern aus in einem Verzeichnis gearbeitet wird. Hier muss natürlich peinlichst darauf geachtet werden Konflike zu vermeiden und der Gruppe nicht zu viele Rechte zu geben.

Die Nutzergruppe Öffentlichkeit ist vor allem bei Webservern interessant. Hier möchte man ja gerade, dass jeder auf die Dateien zugreifen kann und sie z.B. mit seinem Webbrowser betrachten kann. In bestimmten Fällen muss die Öffentlichkeit sogar mehr als nur das Leserecht auf eine Datei oder ein Verzeichnis bekommen. Ein Beispiel ist der Upload von Dateien auf einen Webserver. Hier muss der Administrator sehr genau hinsehen, wenn es darum geht die Rechte richtig zu vergeben, um keine Sicherheitslücken offen zu lassen.

Rechtevergabe

Nun zur eigentlichen Rechtevergabe. Nachdem festgehalten wurde welche Rechte und Nutzer es gibt bleibt noch zu klären, wie diese Rechte Codiert werden. Folgende Tabelle verschafft einen Überblick darüber:

Benutzerrechte
Benutzer Gruppe Öffentlichkeit
r w x r w x r w x

Im Allgemeinen ist ein Rechtevergabebefehl folgendermaßen aufgebaut:

chmod [-R] <Rechte> <Verzeichnis/Datei>

Der Optionale Parameter -R ist vor allem für Verzeichnisse Interessant um die Vergebenen Rechte rekursiv in allen Unterverzeichnissen automatisch zu setzen.

<Rechte>:

Zuerst muss hier genannt werden, wer von der Rechtssetzung betroffen ist:

u: Benutzer

g: Benutzergruppe

o: Öffentlichkeit

a: Alle drei (u,g und o)

Anschließend folgt die Art der Rechtevergabe:

= : Rechte setzen

+ : Rechte hinzufügen

- : Rechte entfernen

und schließlich die drei bekannten Rechte r,w und x.

Beispiele

rw-r--r-- Benutzer hat Lese- und Schreibrechte, die Nutzergruppe und die Öffentlichkeit nur das Leserecht. Niemand darf ausführen. (Dies ist kein Befehl zum Setzen der Rechte)
chmod o-rwx geheim.txt Der Öffentlichkeit werden alle Rechte an geheim.txt entzogen. Die Datei ist danach für die Öffentlichkeit unsichtbar.
chmod -R u=r,g=,o= system/ Der Nutzer entzieht sich selbst die Schreib- und Ausführrechte am Verzeichnis system. -R steht für rekursiv, sprich alle Unterverzeichnisse werden mit einbezogen. g und o erhalten garkeine Rechte.
chmod go+x upload.php Der Öffentlichkeit und der Nutzergruppe werden die Ausführrechte an upload.php gegeben.

 

Sie haben noch Fragen?

Nutzen Sie einfach die Kommentarfunktion, die Ihnen auch als unregistrierter Leser zur Verfügung steht!

Gerne wird Ihnen bei Fragen zum Artikel weiter geholfen! Wenn Sie vom Artikel abweichende Fragen haben, können Sie gerne das Forum verwenden!

 

Kommentare

Kommentar von Matthias Schöpe | 2012-08-29

Hallo,
 Ich habe Ihre Frage zum Anlass genommen und einen neuen Artikel verfasst, der die Problemstellung mit dem FTP-Programm FileZilla löst:
CHMOD Einstellungen per FTP mit FileZilla vornehmen

Ich hoffe Ihnen ist damit geholfen, da ich nicht weiß, welches FTP- Programm Sie verwenden. Ich verwende FileZilla und kann es nur sehr empfehlen.

Mit freundlichem Gruß

Matthias Schöpe

Kommentar von W.Zehm | 2012-08-29

Hallo
Ich bin ziemlich neu bei der Fürhung eines php-Forums!
Jetzt kam bei mir diese Nachricht:
Deine Konfigurations-Datei (config.php) ist derzeit von jedermann beschreibbar. Es wird dringend empfohlen, die Berechtigungen auf 640 oder zumindest auf 644 (z. B.: chmod 640 config.php) zu setzen

Mit meinem FTP-Programm habe ich zwar diese Datei gefunden, ich weiß aber nicht wie ich diese Berechtigung ändern kann!
Für eine Hilfe wäre ich sehr dankbar!
Winni

Computer-Masters.de > Artikel > Grundlagen > Rechteverwaltung mit CHMOD in UNIX Systemen

Anzeige: