Zum Inhalt springen

chmod 777: was der Modus bedeutet und wann er angebracht ist

Läuft in Ihrem Browser — nichts, was Sie einfügen, verlässt diese Seite. Wie wir das belegen

chmod-Rechner-Playground

Examples
Permission bits
Read
Write
Exec
Owner
Group
Other
Enter a value

The matrix, octal and symbolic fields all stay in sync — edit any one and the others follow.

Results update as you type — press Enter to run now.

fig. 29 — chmod-calculator · utilities 777 · rwxrwxrwx · file
Output
Octal777
Symbolicrwxrwxrwx
ls -l-rwxrwxrwx
Commandchmod 777 file

`chmod 777 file` setzt den Modus `rwxrwxrwx`: Jedes Konto auf dem System darf die Datei lesen, ändern und ausführen. Das ist fast nie die richtige Lösung — meist sind 755 oder 644 der sicherere Wert.

Was chmod 777 bedeutet

In 777 steht die erste Ziffer für den Eigentümer, die zweite für die Gruppe und die dritte für alle anderen. Eigentümer: Lesen, Schreiben und Ausführen; Gruppe: Lesen, Schreiben und Ausführen; andere: Lesen, Schreiben und Ausführen.

ls -l zeigt den Modus als -rwxrwxrwx. Jede 7 ist 4 + 2 + 1, also Lesen plus Schreiben plus Ausführen — keine Klasse bleibt außen vor. Auf einem Verzeichnis bedeuten dieselben Bits, dass jedes Konto es auflisten, betreten und darin Einträge anlegen, umbenennen oder löschen darf, auch Dateien, die jemand anderem gehören.

Warum 777 ein Sicherheitsproblem ist

Eine weltweit beschreibbare Datei kann jeder lokale Prozess ersetzen, auch ein kompromittierter Webserver, der als www-data oder nginx läuft. Ist die Datei ein Skript, das cron oder ein Deploy-Hook startet, kann jeder, der sie beschreiben darf, Code unter dem Konto ausführen, das sie aufruft. Ein weltweit beschreibbares Verzeichnis erlaubt es jedem Benutzer, Dateien in einem Pfad abzulegen, dem ein anderes Programm vertraut.

Gemeinsamer Arbeitsplatz wie /tmp ist absichtlich für alle beschreibbar, hat aber den Modus 1777 und nicht 777: Das zusätzliche Sticky-Bit sorgt dafür, dass jeder nur seine eigenen Dateien löschen kann. Ein schlichtes 777-Verzeichnis bietet diesen Schutz nicht.

Wann man zu 777 greift — und was stattdessen hilft

777 taucht meist nach einem „Permission denied“ einer Web-App oder eines Container-Volumes auf. Die eigentliche Ursache ist fast immer der Besitz: Der Prozess läuft unter einem anderen Benutzer als dem, dem die Dateien gehören. Beheben Sie das mit chown auf das Dienstkonto oder indem Sie dieses Konto in die Gruppe der Datei aufnehmen und der Gruppe Schreibrecht geben, statt die Datei für alle zu öffnen.

Für Code und Verzeichnisse, die ein Server nur lesen muss, ist 755 für Verzeichnisse und 644 für Dateien das übliche Paar. Ein rekursives chmod -R 777 macht außerdem jede Datei ausführbar; reparieren Sie das getrennt nach Typ mit find dir -type d -exec chmod 755 {} + und find dir -type f -exec chmod 644 {} +.

FAQ

Fragen, beantwortet.

Tippen Sie auf eine Frage, um die Antwort aufzuklappen.

Selten, und nur auf einem Wegwerf-Rechner mit einem einzigen Benutzer. Für gemeinsamen Arbeitsplatz nehmen Sie 1777, damit das Sticky-Bit verhindert, dass Benutzer fremde Dateien löschen. Auf einem Server oder in einem Container-Image korrigieren Sie besser den Besitz.

Ja. Alle drei Klassen erhalten das Ausführ-Bit, also kann jeder Benutzer die Datei als Programm starten, sofern sie ein gültiges Binary oder ein Skript mit Shebang-Zeile ist. Ein Grund mehr, den Modus nicht auf einen ganzen Verzeichnisbaum anzuwenden.

More free, private DevOps tools.

Der chmod Calculator ist eines der Werkzeuge in OpsCanopy — einem wachsenden Schirm browserbasierter Validatoren, Konverter und Tester, die niemals einen Server berühren.

42 kostenlose Tools, jedes einzelne offlinefähig — opscanopy.com funktioniert ohne Registrierung, und nichts wird hochgeladen.

Verwandte Werkzeuge: der UUID / ULID Generator, der Case Converter und das Slugify-Tool, oder der CVE Ignore Converter — oder durchstöbern Sie das vollständige Werkzeugverzeichnis.

Bereitgestellt wie besehen zur bequemen Nutzung; prüfen Sie Berechtigungsänderungen auf Produktionssystemen stets doppelt. OpsCanopy ist kostenlos und offen.