This page has been robot translated, sorry for typos if any. Original content here.

chmod - Ändert den Zugriff auf Dateien

Es zeigt sich zunehmend, dass einige Neulinge, die sich für das Scripting interessieren (Perl / CGI, PHP usw.), nicht wissen, was chmod ist und wie es verwendet wird. In dieser Kurzanleitung erfahren Sie, was chmod ist, wie es eingestellt ist und warum es überhaupt benötigt wird.

Manchmal ist es sehr wichtig, bestimmten Dateien und Ordnern auf dem Webserver Berechtigungen zuzuweisen, sei es aus Sicherheitsgründen oder einfach für die korrekte Ausführung des Skripts. Diese Aktion heißt chmod (change file mod e) oder auf Russisch: Ändern des Zugriffsmodus für Dateien. Dieser Name stammt vom Unix-Befehl chmod, der die Berechtigungen für Dateien ändert. Im Laufe der Zeit wurde "chmod" mit dem Wort "Erlaubnis" synonym.

Es gibt drei Gruppen von Benutzern, an denen wir interessiert sind: der Besitzer der Datei, die Gruppe und andere Benutzer.

Durch das Erstellen einer Datei erhält der Benutzer automatisch das breiteste Recht, irgendetwas mit dieser Datei zu tun, seine Gruppe ist etwas niedriger und alle anderen sind völlig unbedeutend. In Unix gibt es nur drei Grundrechte: Lesen einer Datei oder Durchsuchen eines Verzeichnisses („Lesen“), Ändern einer Datei oder eines Ordners, Schreiben von etwas oder Löschen insgesamt („Wite“). Letztes Recht - das Recht zum Ausführen der Datei ("e X ecute").

Der Chmod-Modus kann im numerischen oder Zeichenformat angegeben werden. Zum Beispiel: 755, rwxrxrx, 644 usw.

Wie Sie bereits verstanden haben, bezeichnen die Symbole r , w und x jeweils Lesen , Schreiben und Ausführen . Sie können die Dateiberechtigungen auf diese Weise über jeden FTP-Client festlegen, z. B. CuteFTP. So sieht das Installationsfenster von chmod in diesem Programm aus:

Chmod in CuteFTP


Achten Sie auf die Anordnung der Zecken. Die ersten Kontrollkästchen befinden sich in den Besitzern-Feldern: Lesen, Schreiben, Ausführen (rwx); Dann kommen die "Gruppen" -Felder: Lesen, Ausführen (rx); und schließlich die Felder "Rest": Lesen, Ausführen (rx). Als Ergebnis erhielten wir die Rechte rwxrxrx an der Datei (wiederum Buchstaben und Felder). Das heißt, der Besitzer kann die Datei lesen, schreiben und ausführen. "Gruppe" und "andere" haben das Recht, die Datei zu lesen und auszuführen, aber nicht zu schreiben! Jetzt müssen Sie die Wichtigkeit der Installation von Berechtigungen für Dateien erkennen und versuchen, mit diesem Tool die maximale Sicherheit Ihrer Skripts und Daten auf dem Server zu gewährleisten.


Notieren Sie die Nummer 755 im Feld Manuell. Es stellt sich heraus, dass jedes Recht einen bestimmten Zahlencode hat und manuell eingestellt werden kann:

  • 400 - der Eigentümer hat das Recht zu lesen;
  • 200 - der Besitzer hat das Recht zu schreiben;
  • 100 - der Eigentümer hat ein Leistungsrecht;
  • 40 - die Gruppe hat das Recht zu lesen;
  • 20 - die Gruppe hat das Recht auf Aufzeichnung;
  • 10 - die Gruppe hat ein Leistungsrecht;
  • 4 - der Rest hat das Recht zu lesen;
  • 2 - der Rest hat das Recht auf Aufzeichnung;
  • 1 - der Rest hat das Recht zu spielen.
Die Summe dieser Punkte ergibt den gewünschten chmod. Zum Beispiel möchten wir, dass der Eigentümer alles tut, während die Gruppe und die anderen nur die Datei lesen können. Wir addieren: 400 + 200 + 100 + 40 + 4 = 744. Das heißt, wir brauchen chmod 744. Jetzt müssen wir nur noch die Zahlen zusammenfassen, die den Zugriffsrechten entsprechen, die wir für die Datei benötigen, und sie installieren.

Beispiele:

400 + 40 + 4 = 444 - Jeder darf nur lesen.

400 + 100 + 10 + 1 = 611 - der Besitzer kann lesen und ausführen, der Rest nur ausführen.

400 + 200 + 40 + 4 = 644 - bedeutet, dass Sie jedem das Lesen erlauben, aber nur der Besitzer der Datei kann in diese Datei schreiben. Selbst wenn Sie der Eigentümer der Datei sind und sie im Browser öffnen, können Sie nichts hineinschreiben, da der Zugriff über den Browser Sie anonym macht.

400 + 200 + 40 + 20 + 4 + 2 = 666 - bedeutet, dass jeder diese Datei lesen und schreiben kann. Dies ist notwendig, damit Benutzer Einträge in Gästebüchern, Foren usw. vornehmen können.

400 + 200 + 100 + 40 + 10 + 4 + 1 = 755 ist ein klassischer Befehl für das CGI-Skript. Ein CGI-Skript ist eine ausführbare Datei, auf die jeder zum Lesen und Ausführen zugreifen kann. Nur der Besitzer dieser Datei kann sie ändern oder löschen.

Ich werde eine meiner Meinung nach noch günstigere Chmod-Berechnungstabelle geben: