DevToolBoxKOSTENLOS
Blog

Linux Dateiberechtigungen Erklaert: Der Komplette chmod-Rechner Guide

12 Min. Lesezeitvon DevToolBox

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: 754

2. 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:

OktalSymbolischBedeutung
0---No permission
1--xExecute only
2-w-Write only
3-wxWrite + Execute
4r--Read only
5r-xRead + Execute
6rw-Read + Write
7rwxRead + 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.

OktalSymbolischBedeutungTypischer Einsatz
777rwxrwxrwxVoller Zugriff fuer alleNur temporaeres Debugging; NIE in Produktion
755rwxr-xr-xEigentuemer voll; Gruppe/Andere Lesen+AusfuehrenVerzeichnisse, ausfuehrbare Skripte, Webserver-Wurzel
750rwxr-x---Eigentuemer voll; Gruppe Lesen+Ausfuehren; Andere nichtsGemeinsame Projektverzeichnisse
700rwx------Nur Eigentuemer voller Zugriff~/.ssh Verzeichnis, private Skripte
666rw-rw-rw-Lesen+Schreiben fuer alle; kein AusfuehrenSelten verwendet; temporaere gemeinsame Dateien
644rw-r--r--Eigentuemer Lesen+Schreiben; Gruppe/Andere LesenHTML, CSS, PHP, Konfigurationsdateien
640rw-r-----Eigentuemer Lesen+Schreiben; Gruppe Lesen; Andere nichtsLogdateien, sensible Konfigurationen
600rw-------Nur Eigentuemer Lesen+SchreibenSSH-Privatschluessel, .env-Dateien, Zugangsdaten
400r--------Nur Eigentuemer LesenSSL-Zertifikate, schreibgeschuetzte Geheimnisse
775rwxrwxr-xEigentuemer voll; Gruppe voll; Andere Lesen+AusfuehrenGemeinsame 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 directory

Symbolischer 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+others

Rekursives 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:

Chmod Calculator →

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/storage

Skripte 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.sh

SSH-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 file

Umgebungs- 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/uploads

6. Spezialberechtigungen: setuid, setgid, Sticky Bit

Neben den neun Standardbits gibt es drei Spezialbits.

setuid (SUID) -- 4000

Der Prozess laeuft mit den Rechten des Datei-Eigentuemers. Beispiel: /usr/bin/passwd. Anzeige als s.

setgid (SGID) -- 2000

Auf Verzeichnissen erben neue Dateien automatisch die Gruppe des Verzeichnisses.

Sticky Bit -- 1000

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 dirs

7. 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 →
Sehen Sie auch unseren htaccess-Generator fuer Apache-Konfiguration.Brauchen Sie ein starkes Passwort? Probieren Sie unseren Passwort-Generator.
𝕏 Twitterin LinkedIn
War das hilfreich?

Bleiben Sie informiert

Wöchentliche Dev-Tipps und neue Tools.

Kein Spam. Jederzeit abbestellbar.

Verwandte Tools ausprobieren

🔐Chmod Calculator.ht.htaccess Generator🔑Password Generator

Verwandte Artikel

Linux-Dateiberechtigungen erklÀrt: chmod 777, 755, 644 und mehr

Linux-Dateiberechtigungen, chmod-Befehle und Oktalnotation verstehen.

Linux chmod, chown & chgrp: Dateiberechtigungen Leitfaden

VollstÀndiger Leitfaden zu Linux-Dateiberechtigungen: chmod numerisch und symbolisch, chown, chgrp und Sonderberechtigungen.

SSH Keygen: Ed25519 vs RSA Leitfaden

SSH-SchlĂŒssel mit ssh-keygen generieren. Vergleich Ed25519 vs RSA, SchlĂŒsselgrĂ¶ĂŸen und Best Practices.