Dieser Artikel beschreibt, wie Sie einen Linux®-Benutzer mit Lese- und Schreibberechtigungen für Ihr Webdokument-Stammverzeichnis einrichten, das Sie normalerweise im Verzeichnis /var/www/ finden Verzeichnis. Nachdem Sie sich mit diesem Benutzer über Secure File Transfer Protocol (SFTP) verbunden haben, können Sie Ihre Website-Inhalte direkt in Ihren Website-Ordner hochladen, z. B. /var/www/your-site-folder .
Dieses Beispiel verwendet ein Konto namens demo . Achten Sie darauf, demo zu ersetzen in den Beispielen mit Ihrem Wunschnamen.
Diese Befehle erfordern Superuser-Privilegien, also gehen sie davon aus, dass Sie sie von einem Root-Benutzer sudo
ausführen Konto.
Gruppe und Verzeichnis abrufen
Sie müssen die Gruppe kennen, unter der der Webserver-Prozess läuft, sowie den Speicherort des Dokumentstammverzeichnisses Ihres Webservers. Diese finden Sie in der Konfigurationsdatei des Webservers (z. B. httpd.conf oder apache2.conf für Apache®). Im folgenden Abschnitt finden Sie die Standardwerte für den Apache-Webserver, auf dem einige Linux-Distributionen ausgeführt werden:
CentOS®, Fedora® und RHEL®
Auf Red Hat®-basierten Systemen läuft Apache unter der Gruppe Apache mit einem Dokumentenstamm von /var/www/html .
Betriebssystem Ubuntu® und Debian®
Auf Debian®-basierten Systemen läuft Apache unter der Gruppe www-data mit einem Dokumentenstamm von /var/www .
Erstellen oder ändern Sie einen Benutzer
Erstellen Sie einen neuen Benutzer oder ändern Sie einen bestehenden Benutzer für das Beispiel.
Neuen Benutzer erstellen
Erstellen Sie einen neuen Benutzer in derselben Gruppe wie der Webserver, wobei sein Home-Verzeichnis auf Ihr Dokument-Root festgelegt ist.
Denken Sie daran, die Werte so zu ändern, dass sie mit Ihrem Benutzernamen und den Einstellungen Ihres Webservers übereinstimmen.
Unter CentOS, Fedora oder RHEL ähnelt der Befehl zum Erstellen des Benutzers dem folgenden Beispiel:
$ sudo useradd -d /var/www/html -G apache demo
Verwenden Sie auf Debian- oder Ubuntu-Betriebssystemen andere Werte:
$ sudo useradd -d /var/www -G www-data demo
Nachdem Sie den Benutzer erstellt haben, legen Sie auch das Passwort fest.
$ sudo passwd demo
Sie können bei Bedarf zum Abschnitt zum Ändern des Dokumentenstammverzeichnisses für Gruppenschreibrechte springen.
Bestehenden Benutzer ändern
Um einen bestehenden Benutzer zu ändern, müssen Sie ihn der Gruppe hinzufügen, die Ihr Webserver verwendet.
Unter CentOS, Fedora oder RHEL ähnelt der Befehl dem folgenden Befehl:
$ sudo usermod -a -G apache demo
Auf dem Ubuntu-Betriebssystem oder Debian könnte die Ausgabe dem folgenden Befehl ähneln:
$ sudo usermod -a -G www-data demo
Um das Konto so zu ändern, dass es das Dokumentenstammverzeichnis als Home-Verzeichnis verwendet, können Sie diesen Vorgang wiederholen.
Führen Sie den folgenden Befehl in der Befehlszeile aus, wenn Sie CentOS, Fedora oder RHEL verwenden:
$ sudo usermod -d /var/www/html demo
Verwenden Sie auf dem Ubuntu-Betriebssystem oder Debian den folgenden Befehl:
% sudo usermod -d /var/www demo
Ändern Sie die Root-Berechtigungen des Dokuments
Ändern Sie den Dokumentenstamm, sodass sich die Datei und der Inhalt in derselben Gruppe wie der Webserver befinden.
Gruppe festlegen
Führen Sie unter CentOS, Fedora oder RHEL den folgenden Befehl aus:
$ sudo chgrp -R apache /var/www/html
Führen Sie auf dem Ubuntu-Betriebssystem oder Debian den folgenden Befehl aus:
$ sudo chgrp -R www-data /var/www
Stellen Sie die Berechtigungen ein
Machen Sie das Dokumentstammverzeichnis schreibgeschützt, aber setzen Sie die setgid Berechtigung für das Dokumentstammverzeichnis selbst. Die setgid Berechtigung stellt sicher, dass die neuen Dateien, die Sie im Dokumentenstamm erstellen, die Gruppen-ID von ihrem übergeordneten Verzeichnis erben.
Unter CentOS, Fedora oder RHEL können Sie die richtigen Berechtigungen mit den folgenden Befehlen festlegen:
$ sudo chmod -R g+w /var/www/html
$ sudo chmod g+s /var/www/html
Das Ubuntu-Betriebssystem und die Debian-Versionen der Befehle sind:
$ sudo chmod -R g+w /var/www
$ sudo chmod g+s /var/www
Verbinden und testen
Stellen Sie über SFTP mit dem von Ihnen erstellten oder geänderten Benutzerkonto eine Verbindung zu Ihrem Server her. Versuchen Sie, eine Datei hochzuladen, um sicherzustellen, dass Sie die Berechtigungen richtig festlegen. Wenn Sie eine Berechtigung verweigert erhalten Fehler, führen Sie den Befehl ls -la
aus , im Dokumentenstammverzeichnis, um die Verzeichnisberechtigungen zu überprüfen.