Mir sind die Anforderungen bekannt, die WP an bestimmte Verzeichnisse und Dateien stellt, damit diese beschreibbar sind. Mir ist auch bewusst, dass zu lockere Berechtigungen Sicherheitslücken öffnen können. Schließlich weiß ich, dass der Benutzer, der (hier Ihren Server einfügen) wie auf Linux-Systemen läuft, ein Faktor sein kann.
Abgesehen von der Sicherheit mag ich es, Themen und Plugins in mein Blog herunterladen und bei Bedarf aktualisieren zu können. Die richtigen Berechtigungen scheinen dieser Präferenz etwas zu widersprechen.
Ich habe hier und da kleine Details gesammelt, aber ich würde gerne eine endgültigere Antwort sehen, wenn es eine gibt: Was ist das bevorzugte Setup mit einem Hinweis auf die Sicherheit? Welche Berechtigungen sollten vorhanden sein, unter welchem Benutzer sollte die Site ausgeführt werden usw.
Antworten:
Wenn Sie FTP-Zugriff auf Ihren Server haben, besteht das sicherste Setup darin, dass Ihre Themes oder Plugins nicht von Ihrem Webserver beschreibbar sind und stattdessen WordPress-Aktualisierungsdateien über FTP. Wenn Sie ein Plugin aktualisieren, werden Sie von WordPress zur Eingabe Ihrer FTP-Daten aufgefordert.
Die FTP-Methode ist viel langsamer als das direkte Schreiben von Dateien, aber viel sicherer, da ein nicht autorisiertes Skript Ihre Dateien nicht ändern kann.
quelle
Wie @ Viper007Bond feststellte, ist das Aktualisieren Ihres Kerns, Ihrer Plugins und Designs über die integrierten Aktualisierungsmechanismen in Bezug auf Dateiberechtigungen ziemlich sicher, da sie Ihre tatsächlichen Benutzeranmeldeinformationen verwenden können. Für maximale Sicherheit sollten Sie sicherstellen, dass die SSH2-PHP-Erweiterung installiert ist. Die Installationsmethode (falls möglich) kann von Host zu Host variieren. Wenn sie nicht bereits vorhanden ist, müssen Sie möglicherweise den Hosting-Service fragen oder etwas googeln.
Viele gemeinsam genutzte Hosting-Dienste werden
suexec
in ihrem Apache-Setup verwendet, sodass der Webdienst als tatsächlicher Benutzer ausgeführt wird. Dies beseitigt die meisten Berechtigungsprobleme und hilft, Ihre Dateien vor anderen Benutzern auf dem Server zu schützen. In Fällen, in denen Apache als separater Benutzer ausgeführt wird, müssen Sie jedoch Berechtigungen für das Upload-Verzeichnis öffnen, wenn Sie Dateien in WordPress hochladen möchten.In diesem Fall möchten Sie wahrscheinlich, dass Ihr
wp-content/uploads
Verzeichnis über0713
Berechtigungen (AKArwx--x-wx
) verfügt. Dies gibt dem Verzeichnisbesitzer die vollständigen Berechtigungen, seine Gruppe kann Dateien lesen, wenn sie den vollständigen Pfad kennen, und andere (einschließlich des Webservers) können Dateien lesen, zu denen sie den Pfad kennen, und Dateien erstellen / schreiben.Einige Caching-Plugins erwarten auch, dass ein
wp-content/cache
Verzeichnis (oder ähnliches) verfügbar ist, in das sie schreiben können. Dieselbe Berechtigungsempfehlung würde dafür gelten.Für hübsche Permalinks muss WordPress in der Lage sein, die
.htaccess
Datei zu ändern , es sei denn, Sie planen, sie manuell zu aktualisieren. In diesem Fall möchten Sie0646
für den Dateimodus. Sobald Sie sich jedoch für Ihre Permalink-Struktur entschieden haben, müssen Sie diese normalerweise nicht mehr ändern, sodass Sie die zusätzlichen Schreibberechtigungen deaktivieren und auf festlegen können0644
. Gelegentlich erfordert ein Plugin oder ein Core-Upgrade möglicherweise Zugriff darauf, und Sie können die Schreibberechtigungen dafür vorübergehend wieder aktivieren und dann wieder deaktivieren.Alle anderen Dateien sollten
0644
Berechtigungen haben. Verzeichnisse sollten sein,0711
wenn Sie extraparanoid sind, aber das könnte alle Plugins stören, die eine Liste von Dateien aus einem Verzeichnis abrufen müssen. In diesem Fall oder wenn Sie nicht ganz so paranoid sind, verwenden Sie0755
, um anderen das Lesen, aber nicht das Schreiben zu ermöglichen.Das meiste davon ist hauptsächlich ein Problem, wenn Sie Shared Hosting verwenden. Wenn Sie einen dedizierten Server (einschließlich VPS) haben und keine anderen Benutzer über SSH / FTP-Zugriff verfügen, können Sie sich etwas mehr entspannen. Ich meine nicht, dass Sie einfach alles offen beschreibbar machen sollten, aber Sie können wahrscheinlich nur den Systemstandards vertrauen, bei denen es sich wahrscheinlich um
0755
Berechtigungen für Verzeichnisse handelt0711
.Wenn dies eine Option ist, lassen Sie ein SSL-Zertifikat für die Site installieren. Sobald Sie getestet haben, dass Sie über Ihre Site auf Ihre Site zugreifen können
https
, können Sie SSL für Administratoranmeldungen und Zugriff erzwingen, indem Sie diese Zeilenwp-config.php
kurz vor dem ' zu Ihrer Datei hinzufügen. Hör auf zu bearbeiten 'Kommentar:quelle