Direkt zum Inhalt

Cookie-Einstellungen

Wählen Sie, welche Arten von Cookies Sie erlauben. Sie können Ihre Auswahl jederzeit über Cookie-Einstellungen unten auf jeder Seite ändern. Datenschutzerklärung

Notwendig

Immer aktiv

Nötig zum Einloggen, für Ihren Warenkorb und um Ihre Auswahl zu speichern. Diese sind immer aktiv.

Welche Cookies?
  • weboke_sessie, weboke_klant, weboke_remember: Ihre Sitzung und eingeloggt bleiben
  • weboke_basket: Ihr Warenkorb
  • wkBtwIncl: Preise mit oder ohne MwSt. anzeigen
  • wok_cookies: Ihre Cookie-Auswahl, 12 Monate

Misst, welche Anzeige zu einem Besuch oder einer Bestellung führt, damit wir nicht für Anzeigen zahlen, die nichts bringen.

Welche Cookies?
  • Google Ads über Google Tag Manager (_gcl_au, _gcl_aw), bis zu 90 Tage
  • OpenAI Ads, Anzeigen in ChatGPT
  • wok_aff: über welchen Partner Sie zu uns kamen (Partnerprogramm), 60 Tage

4,6

Land und Sprache

Jedes Land hat seine eigene Website, mit Preisen und MwSt. dieses Landes.

Anzeigen

Dateiberechtigungen auf Ihrem VPS auslesen und richtig setzen

Jede Datei und jedes Verzeichnis auf Ihrem VPS hat einen Eigentümer, eine Gruppe und Rechte. Sind sie zu großzügig gesetzt, kann eine gehackte Website oder ein kompromittierter Dienst überall schreiben. Sind sie zu streng, erhalten Sie Fehler wie "Permission denied" oder einen 403 auf Ihrer Website. Hier erfahren Sie, wie Sie Rechte lesen und richtig setzen. Haben Sie ein Hostingpaket mit DirectAdmin, lesen Sie bitte Verboten (403): Sie haben keine Berechtigung, auf / auf diesem Server zuzugreifen.

Rechte lesen mit ls -l

ls -l /var/www/example.com
-rw-r--r-- 1 anna     www-data  1520 index.html
-rw-r----- 1 anna     www-data   412 config.php
drwxr-xr-x 2 anna     www-data  4096 images
drwxrwxr-x 2 www-data www-data  4096 uploads

Das erste Zeichen gibt den Typ an: - ist eine Datei, d ein Verzeichnis, l ein symbolischer Link. Danach folgen drei Gruppen mit je drei Zeichen: was der Eigentümer darf, was die Gruppe darf und was alle anderen dürfen. Anschließend stehen der Eigentümer (anna) und die Gruppe (www-data).

BuchstabeBei einer DateiBei einem Verzeichnis
rLesenDie Namen im Verzeichnis auflisten
wÄndernDateien anlegen, umbenennen und löschen
xAls Programm ausführenDas Verzeichnis betreten und Dateien darin öffnen

Beachten Sie zwei Dinge. Ohne x auf einem Verzeichnis gelangen Sie nicht an die Dateien darin, auch wenn diese lesbar sind. Und wer w auf einem Verzeichnis hat, kann darin Dateien löschen, auch wenn sie jemand anderem gehören.

Rechte als Zahl

Häufig werden Rechte als drei Ziffern geschrieben: r zählt 4, w 2 und x 1, addiert pro Gruppe.

ZahlRechteVerwendung
644rw-r--r--Normale Datei, zum Beispiel eine Webseite oder ein Bild
755rwxr-xr-xVerzeichnis oder ein Programm, das jeder verwenden darf
640rw-r-----Konfiguration mit einem Passwort, für den Webserver über die Gruppe lesbar
600rw-------Geheime Datei, etwa authorized_keys, ein privater Schlüssel oder eine .env-Datei
700rwx------Privates Verzeichnis, etwa ~/.ssh

Rechte und Eigentümer ändern

chmod 640 /var/www/example.com/config.php
chmod g+w /var/www/example.com/uploads
sudo chown anna:www-data /var/www/example.com/config.php

chmod ändert die Rechte, mit einer Zahl oder mit Buchstaben (u, g, o für Eigentümer, Gruppe und andere, mit + oder -). chown eigentümer:gruppe ändert Eigentümer und Gruppe; das darf nur root, also mit sudo.

Für ein ganzes Verzeichnis ist chmod -R 644 ein bekannter Fehler: Alle Unterverzeichnisse verlieren dann ihr x und werden unbrauchbar. Setzen Sie Verzeichnisse und Dateien getrennt mit find:

sudo find /var/www/example.com -type d -exec chmod 755 {} +
sudo find /var/www/example.com -type f -exec chmod 644 {} +

Der Webserver über die Gruppe

Unter Debian und Ubuntu laufen nginx und PHP-FPM standardmäßig unter dem Benutzer www-data. Eine saubere Aufteilung: Sie sind Eigentümer der Dateien, die Gruppe ist www-data. Der Webserver darf dann über die Gruppe lesen und nur in dem Verzeichnis schreiben, wo das wirklich nötig ist, etwa uploads (chmod g+w oder Eigentümer www-data nur für dieses Verzeichnis). Geben Sie dem Webserver keine Schreibrechte auf Ihre PHP-Dateien.

Setzen Sie niemals 777. Dann darf jeder auf dem Server die Datei oder das Verzeichnis lesen, ändern und ausführen. Wird jemals eine Website oder ein Dienst kompromittiert, kann der Angreifer überall schreiben, wo 777 gesetzt ist. Das eigentliche Problem ist fast immer der Eigentümer oder die Gruppe: Beheben Sie das, statt alles freizugeben.

Rechte für SSH

Der SSH-Server prüft die Rechte Ihrer Schlüssel. Dürfen andere in Ihr .ssh-Verzeichnis oder Ihr Home-Verzeichnis schreiben, ignoriert er Ihren Schlüssel und Sie werden wieder nach einem Passwort gefragt, ohne eindeutige Fehlermeldung. Setzen Sie es so:

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

Haben Sie das Verzeichnis als root für einen anderen Benutzer angelegt, setzen Sie auch den Eigentümer richtig, wie in Ein eigener Benutzer mit sudo beschrieben. Unter AlmaLinux und Rocky Linux kann auch SELinux eine Datei verweigern, die die richtigen Rechte hat; bei einem von Hand angelegten .ssh-Verzeichnis hilft restorecon -Rv ~/.ssh.

Sehen Sie irgendwo ein s statt eines x, etwa bei /usr/bin/passwd? Das ist das Setuid-Bit: Das Programm läuft dann mit den Rechten des Eigentümers. Einige Systemprogramme benötigen das, setzen Sie es aber niemals selbst auf ein Skript. Eine unerwartete Setuid-Datei kann auf einen Einbruch hindeuten, siehe Gehackt? Die ersten Schritte.

Möchten Sie mehr erfahren? Besuchen Sie den kostenlosen Kurs VPS und Linux-Serververwaltung, Lektion 3.1 Benutzer, Gruppen und Dateirechte.

War dieser Artikel hilfreich?

← Zurück zu VPS-Hosting

Einen Moment bitte…

Richten Sie Ihre Domains ein

Legen Sie für jede Domain die Nameserver, die Verknüpfung mit Ihrem Hosting und den künftigen Inhaber fest.

Ihre Domains werden geladen…