Linux Dateiberechtigungen sind das Rueckgrat der Systemsicherheit. Jede Datei und jedes Verzeichnis auf einem Unix-System traegt Metadaten, die bestimmen, wer lesen, schreiben oder ausfuehren darf. Ob Sie eine Webanwendung deployen, einen Server absichern oder ein Deployment-Skript debuggen -- das Verstaendnis des chmod-Befehls und der Berechtigungszahlen ist unverzichtbar. Dieser umfassende chmod-Rechner Guide fuehrt Sie durch alles von Grundkonzepten bis zu Spezialbits.
Probieren Sie unseren interaktiven chmod-Rechner aus.
Chmod Calculator â1. Was Sind Linux Dateiberechtigungen?
Jede Datei unter Linux hat drei Benutzerkategorien. Der Eigentuemer ist typischerweise der Ersteller. Die Gruppe ist eine Menge von Benutzern mit gemeinsamen Rechten. Andere bezeichnet alle uebrigen Benutzer. Der Befehl ls -l zeigt den Berechtigungsstring.
Jede Kategorie kann drei Zugriffstypen erhalten: Lesen (r), Schreiben (w) und Ausfuehren (x). Diese neun Bits bilden das Unix-Berechtigungsmodell.
So sieht eine typische <code>ls -l</code> Ausgabe aus:
-rwxr-xr-- 1 alice developers 4096 Feb 20 deploy.sh
Eigentuemer: rwx (7) | Gruppe: r-x (5) | Andere: r-- (4)
Berechtigung: 7542. Berechtigungszahlen Verstehen (Oktalnotation)
Linux stellt jede Berechtigungsgruppe als einzelne Oktalziffer (0-7) dar: Lesen = 4, Schreiben = 2, Ausfuehren = 1. Eine dreistellige Zahl wie 755 kodiert alle drei Kategorien.
Hier ist die Oktal-Referenztabelle:
| Oktal | Symbolisch | Bedeutung |
|---|---|---|
0 | --- | No permission |
1 | --x | Execute only |
2 | -w- | Write only |
3 | -wx | Write + Execute |
4 | r-- | Read only |
5 | r-x | Read + Execute |
6 | rw- | Read + Write |
7 | rwx | Read + Write + Execute |
Um eine vollstaendige Berechtigungszahl zu berechnen, berechnen Sie jede Stelle einzeln. Beispiel: Eigentuemer Lesen+Schreiben (4+2=6), Gruppe Lesen (4), Andere nichts (0) ergibt 640.
3. chmod Berechtigungsreferenztabelle
Eine umfassende Referenztabelle der gaengigsten chmod-Berechtigungen.
| Oktal | Symbolisch | Bedeutung | Typischer Einsatz |
|---|---|---|---|
777 | rwxrwxrwx | Voller Zugriff fuer alle | Nur temporaeres Debugging; NIE in Produktion |
755 | rwxr-xr-x | Eigentuemer voll; Gruppe/Andere Lesen+Ausfuehren | Verzeichnisse, ausfuehrbare Skripte, Webserver-Wurzel |
750 | rwxr-x--- | Eigentuemer voll; Gruppe Lesen+Ausfuehren; Andere nichts | Gemeinsame Projektverzeichnisse |
700 | rwx------ | Nur Eigentuemer voller Zugriff | ~/.ssh Verzeichnis, private Skripte |
666 | rw-rw-rw- | Lesen+Schreiben fuer alle; kein Ausfuehren | Selten verwendet; temporaere gemeinsame Dateien |
644 | rw-r--r-- | Eigentuemer Lesen+Schreiben; Gruppe/Andere Lesen | HTML, CSS, PHP, Konfigurationsdateien |
640 | rw-r----- | Eigentuemer Lesen+Schreiben; Gruppe Lesen; Andere nichts | Logdateien, sensible Konfigurationen |
600 | rw------- | Nur Eigentuemer Lesen+Schreiben | SSH-Privatschluessel, .env-Dateien, Zugangsdaten |
400 | r-------- | Nur Eigentuemer Lesen | SSL-Zertifikate, schreibgeschuetzte Geheimnisse |
775 | rwxrwxr-x | Eigentuemer voll; Gruppe voll; Andere Lesen+Ausfuehren | Gemeinsame Upload-Verzeichnisse |
4. Wie Man den chmod-Befehl Verwendet
Der chmod-Befehl aendert Berechtigungen. Er unterstuetzt zwei Modi: numerisch (oktal) und symbolisch.
Numerischer Modus
Im numerischen Modus geben Sie eine drei- oder vierstellige Oktalzahl an:
chmod 755 script.sh # rwxr-xr-x
chmod 644 config.json # rw-r--r--
chmod 600 id_rsa # rw-------
chmod 400 cert.pem # r--------
chmod -R 755 /var/www/html # Recursive on directorySymbolischer Modus
Symbolischer Modus nutzt die Syntax chmod [ugoa][+-=][rwxXst]:
- Wer: u (Eigentuemer), g (Gruppe), o (Andere), a (Alle)
- Operator: + (hinzufuegen), - (entfernen), = (exakt setzen)
- Berechtigung: r (Lesen), w (Schreiben), x (Ausfuehren)
chmod u+x script.sh # Add execute for owner
chmod g-w file.txt # Remove write from group
chmod o+r document.pdf # Add read for others
chmod a+x run.sh # Add execute for all
chmod u=rwx,go=rx dir/ # Owner=rwx, group+others=rx (755)
chmod go-rwx secret.key # Remove all from group+othersRekursives chmod
Verwenden Sie chmod -R fuer rekursive Aenderungen:
# Set directories to 755 and files to 644 (web server standard)
find /var/www/html -type d -exec chmod 755 {} \;
find /var/www/html -type f -exec chmod 644 {} \;
# Make all .sh files executable
find /opt/scripts -name "*.sh" -exec chmod 755 {} \;Nutzen Sie unseren chmod-Rechner fuer den exakten Befehl:
5. Gaengige chmod-Muster fuer Entwickler
Verschiedene Dateitypen erfordern spezifische Berechtigungseinstellungen. Hier ist die definitive Referenz.
Webserver-Dateien
Standard: 644 fuer Dateien, 755 fuer Verzeichnisse:
# Web server document root
chmod 755 /var/www/html
chmod 644 /var/www/html/index.html
chmod 644 /var/www/html/style.css
chmod 644 /var/www/html/.htaccess
# PHP / application files
chmod 644 /var/www/html/app/*.php
chmod 755 /var/www/html/app/storageSkripte und Ausfuehrbare
755 fuer gemeinsame Skripte, 700 fuer private:
# Shared executable scripts
chmod 755 deploy.sh
chmod 755 /usr/local/bin/my-tool
# Private scripts (owner only)
chmod 700 backup-db.sh
chmod 700 cleanup.shSSH-Schluessel und Konfiguration
SSH ist sehr streng bei Berechtigungen:
chmod 700 ~/.ssh # SSH directory
chmod 600 ~/.ssh/id_rsa # Private key
chmod 600 ~/.ssh/id_ed25519 # Private key (Ed25519)
chmod 644 ~/.ssh/id_rsa.pub # Public key
chmod 600 ~/.ssh/authorized_keys # Authorized keys
chmod 600 ~/.ssh/config # SSH config fileUmgebungs- und Geheimnisdateien
Dateien mit API-Schluesseln muessen auf Eigentuemer beschraenkt sein:
chmod 600 .env # Environment variables
chmod 600 .env.production # Production secrets
chmod 600 database.yml # Database credentials
chmod 600 credentials.json # API credentials
chmod 400 ssl-cert.pem # SSL certificate (read-only)Upload-Verzeichnisse
Upload-Verzeichnisse benoetigen Gruppen-Schreibrechte:
chmod 775 /var/www/html/uploads
chmod 775 /var/www/html/tmp
chmod 775 /var/www/html/cache
# Ensure web server group owns the directory
# chown www-data:www-data /var/www/html/uploads6. Spezialberechtigungen: setuid, setgid, Sticky Bit
Neben den neun Standardbits gibt es drei Spezialbits.
Der Prozess laeuft mit den Rechten des Datei-Eigentuemers. Beispiel: /usr/bin/passwd. Anzeige als s.
Auf Verzeichnissen erben neue Dateien automatisch die Gruppe des Verzeichnisses.
Nur Eigentuemer oder root koennen Dateien loeschen. Beispiel: /tmp (1777).
Spezialberechtigungen setzen:
# SUID: run as file owner
chmod 4755 /usr/bin/passwd
chmod u+s /usr/bin/my-tool
# SGID: inherit group on directory
chmod 2755 /shared/project
chmod g+s /shared/project
# Sticky Bit: prevent deletion by others
chmod 1777 /tmp
chmod +t /shared/uploads
# Combine: SGID + standard permissions
chmod 2775 /team/shared-dir
# Find files with special permissions
find / -perm -4000 -type f 2>/dev/null # Find SUID files
find / -perm -2000 -type f 2>/dev/null # Find SGID files
find / -perm -1000 -type d 2>/dev/null # Find sticky dirs7. Best Practices fuer Dateiberechtigungen
Berechtigungen sind eine kritische Verteidigungsschicht.
Prinzip der minimalen Rechte. Nur die notwendigen Berechtigungen vergeben.
Niemals chmod 777 in Produktion. Gibt jedem vollen Zugriff.
Regelmaessig Berechtigungen pruefen. find / -perm -777 -type f verwenden.
Gruppen statt world-readable verwenden.
Vorsicht mit rekursivem chmod. Pfad immer ueberpruefen.
Berechtigungsanforderungen dokumentieren.
umask fuer sichere Standardwerte. umask 027 setzen.
Nutzen Sie unseren chmod-Rechner fuer schnelle visuelle Berechtigungsbestimmung.
8. Haeufig Gestellte Fragen
Was bedeutet chmod 755?
chmod 755 gibt dem Eigentuemer vollen Zugriff (rwx = 7) und Gruppe/Anderen Lese- und Ausfuehrungsrechte (r-x = 5). Standard fuer ausfuehrbare Skripte und Verzeichnisse.
Was ist der Unterschied zwischen chmod 755 und 644?
chmod 755 (rwxr-xr-x) erlaubt Ausfuehrung fuer alle -- fuer Verzeichnisse und Skripte. chmod 644 (rw-r--r--) entfernt Ausfuehrung und erlaubt nur dem Eigentuemer das Schreiben -- fuer regulaere Dateien.
Wie pruefe ich Dateiberechtigungen unter Linux?
Fuehren Sie ls -la aus. Die erste Spalte zeigt die Berechtigungen. Verwenden Sie stat fuer detailliertere Informationen.
Was ist die sicherste Dateiberechtigung?
Praktisch sind 400 (nur Lesen) oder 600 (Lesen+Schreiben nur Eigentuemer) die restriktivsten nuetzlichen Berechtigungen.
Kann ich chmod auf dem Mac verwenden?
Ja. macOS basiert auf BSD Unix und unterstuetzt chmod vollstaendig mit gleicher Syntax wie Linux.
Berechnen Sie chmod-Werte mit unserem kostenlosen Online-Rechner.
Chmod Calculator â