FTP-Uploads erhalten falsche Berechtigungen für Wordpress
Hallo zusammen,
ich möchte gerne ein aktuelles Wordpress zum Laufen bringen, wo sowohl ein FTP-User Schreibrechte hat, als auch der installierte Apache (www-user), um über die Weboberfläche z.B. Upgrades durchzuführen.
So ungefähr müsste es doch auch bei 1&1, Strato etc sein, oder? Dort kann ich doch auch per FTP hochladen, und über die Weboberfläche Upgrades installieren.
Oder wie läuft das dort?
meine Situation:
Auf einem Debian 10 läuft ein proftp-Server und ein Apache-Webserver.
Es existiert:
1 FTP-User
Benutzername: ftpuser1
Die Gruppe aller FTP-User lautet: ftpuser
1 Apache Webserver:
Benutzername: www-data
Gruppe: www-data
Webroot /var/www/webspace1
Besitzer des Webroots ist ftpuser1
Gruppe des Webroots ist ftpuser
Die Zugriffsrechte lauten 775
Der Benutzer www-data gehört auch zur Gruppe ftpuser.
Hintergrund: der FTP-User lädt was hoch (ist dann also Besitzer).
Es handelt sich um eine Wordpress-Installation, wo auch über das Webinterface von Wordpress z.B. Upgrades durchgeführt werden sollen.
Somit habe ich den User www-data in die Gruppe ftpuser aufgenommen, damit über das Webinterface (als Nutzer www-data) Änderungen durchgeführt werden können.
Problem:
Wenn ich über Filezilla als ftpuser1 ein Unterverzeichnis erstelle, dann hat es nicht 775er Rechte (wie gewünscht und wie es auch das webroot-verzeichnis hat), sondern 755. Warum?
Die hinterlegte Gruppe ist dann auch ftpuser1 - ich möchte aber, dass die Gruppe ftpuser lautet. Wie stelle ich das ein?
Nächstes Problem:
Wenn ich dann in das Unterverzeichnis gehe und dort eine Datei hochlade, hat die Datei ein 644-Recht und die Gruppe ist ftpuser1.
Die Gruppe soll standardmässig ftpuser sein und das Recht soll auf standardmässig 664 stehen, damit der Webserver auch schreibend zugreifen kann.
Wie stelle ich das ein?
Ich kann alle bereits hochgeladenen Dateien natürlich beliebige Rechte geben, aber wie lege ich fest, welche Rechte neu erstellte Dateien und Ordner defaultmässig bekommen?
Vielen Dank vorab!
Gruß
Colt
ich möchte gerne ein aktuelles Wordpress zum Laufen bringen, wo sowohl ein FTP-User Schreibrechte hat, als auch der installierte Apache (www-user), um über die Weboberfläche z.B. Upgrades durchzuführen.
So ungefähr müsste es doch auch bei 1&1, Strato etc sein, oder? Dort kann ich doch auch per FTP hochladen, und über die Weboberfläche Upgrades installieren.
Oder wie läuft das dort?
meine Situation:
Auf einem Debian 10 läuft ein proftp-Server und ein Apache-Webserver.
Es existiert:
1 FTP-User
Benutzername: ftpuser1
Die Gruppe aller FTP-User lautet: ftpuser
1 Apache Webserver:
Benutzername: www-data
Gruppe: www-data
Webroot /var/www/webspace1
Besitzer des Webroots ist ftpuser1
Gruppe des Webroots ist ftpuser
Die Zugriffsrechte lauten 775
Der Benutzer www-data gehört auch zur Gruppe ftpuser.
Hintergrund: der FTP-User lädt was hoch (ist dann also Besitzer).
Es handelt sich um eine Wordpress-Installation, wo auch über das Webinterface von Wordpress z.B. Upgrades durchgeführt werden sollen.
Somit habe ich den User www-data in die Gruppe ftpuser aufgenommen, damit über das Webinterface (als Nutzer www-data) Änderungen durchgeführt werden können.
Problem:
Wenn ich über Filezilla als ftpuser1 ein Unterverzeichnis erstelle, dann hat es nicht 775er Rechte (wie gewünscht und wie es auch das webroot-verzeichnis hat), sondern 755. Warum?
Die hinterlegte Gruppe ist dann auch ftpuser1 - ich möchte aber, dass die Gruppe ftpuser lautet. Wie stelle ich das ein?
Nächstes Problem:
Wenn ich dann in das Unterverzeichnis gehe und dort eine Datei hochlade, hat die Datei ein 644-Recht und die Gruppe ist ftpuser1.
Die Gruppe soll standardmässig ftpuser sein und das Recht soll auf standardmässig 664 stehen, damit der Webserver auch schreibend zugreifen kann.
Wie stelle ich das ein?
Ich kann alle bereits hochgeladenen Dateien natürlich beliebige Rechte geben, aber wie lege ich fest, welche Rechte neu erstellte Dateien und Ordner defaultmässig bekommen?
Vielen Dank vorab!
Gruß
Colt
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 637348
Url: https://administrator.de/contentid/637348
Ausgedruckt am: 22.11.2024 um 06:11 Uhr
4 Kommentare
Neuester Kommentar
Hallo,
das Stichwort heist "Jail".
Du möchtest im Endeffekt, dass für die Domäne "name.de" sowohl FTP, SSH, Web und PHP alle den gleichen Benutzer "name.de" verwenden.
Das ist nicht schwer aber doch fummelig zu konfigurieren.
Mit Jail begrenz Du z.B. auch den Zugriff von PHP auf das Domain-Verzeichnis.
Solange es nicht um Hochlast-Systeme geht, verwenden wir inzwischen Plesk für alle Systeme.
Es gibt aber auch genug fertig Open-Source-Systeme.
Stefan
das Stichwort heist "Jail".
Du möchtest im Endeffekt, dass für die Domäne "name.de" sowohl FTP, SSH, Web und PHP alle den gleichen Benutzer "name.de" verwenden.
Das ist nicht schwer aber doch fummelig zu konfigurieren.
Mit Jail begrenz Du z.B. auch den Zugriff von PHP auf das Domain-Verzeichnis.
Solange es nicht um Hochlast-Systeme geht, verwenden wir inzwischen Plesk für alle Systeme.
Es gibt aber auch genug fertig Open-Source-Systeme.
Stefan
Lösungen für beide Fragen stehen schon im letzten Post...
Kann man ja dann hier auch schließen,
Kann man ja dann hier auch schließen,
Hi,
das, was du grundsätzlich suchst, ist die sog. "umask" - im Prinzip das Gegenteil der normalen Berechtigungen, wenn man so möchte.
Die umask legt fest, wie die standard Rechte bei neu Erschaffenem aussehen (wenn du zB eine umask von "002" setzt, sind die Rechte 775, wenn du die umask auf "022" setzt, sind sie 755, usw.).
Grundsätzlich kannst du diesen Wert für das ganze System / für alle User, nur für einzelne User und auch für bestimmte Dienste an div. Stellen festlegen. Ein bisschen Futter zum Einlesen:
https://askubuntu.com/questions/44542/what-is-umask-and-how-does-it-work
https://www.cyberciti.biz/tips/understanding-linux-unix-umask-value-usag ...
https://www.digitalocean.com/community/questions/set-umask-for-another-u ...
https://serverfault.com/questions/201305/default-owner-permissions-of-cr ... (hier für einen speziellen FTP-Dienst, eben vsftpd -> musst du ggf. nach dem suchen, den du verwendest)
Zum Thema Gruppen: Eine Datei hat normalerweise als Standard(gruppen)zugehörigkeit die Primärgruppe des Users, der sie erstellt hat.
Ich kenne jetzt deine Config nicht, aber ich vermute, dass der User "ftpuser1" zwar der gewünschten Gruppe "ftpuser" angehört, aber eben auch der Gruppe "ftpuser1", und zwar primär.
das, was du grundsätzlich suchst, ist die sog. "umask" - im Prinzip das Gegenteil der normalen Berechtigungen, wenn man so möchte.
Die umask legt fest, wie die standard Rechte bei neu Erschaffenem aussehen (wenn du zB eine umask von "002" setzt, sind die Rechte 775, wenn du die umask auf "022" setzt, sind sie 755, usw.).
Grundsätzlich kannst du diesen Wert für das ganze System / für alle User, nur für einzelne User und auch für bestimmte Dienste an div. Stellen festlegen. Ein bisschen Futter zum Einlesen:
https://askubuntu.com/questions/44542/what-is-umask-and-how-does-it-work
https://www.cyberciti.biz/tips/understanding-linux-unix-umask-value-usag ...
https://www.digitalocean.com/community/questions/set-umask-for-another-u ...
https://serverfault.com/questions/201305/default-owner-permissions-of-cr ... (hier für einen speziellen FTP-Dienst, eben vsftpd -> musst du ggf. nach dem suchen, den du verwendest)
Zum Thema Gruppen: Eine Datei hat normalerweise als Standard(gruppen)zugehörigkeit die Primärgruppe des Users, der sie erstellt hat.
Ich kenne jetzt deine Config nicht, aber ich vermute, dass der User "ftpuser1" zwar der gewünschten Gruppe "ftpuser" angehört, aber eben auch der Gruppe "ftpuser1", und zwar primär.
Moin,
Gruß,
Dani
Das ist nicht schwer aber doch fummelig zu konfigurieren.
Mit genügend Zeit ist alles hin zubekommen, wenn es technisch vorgesehen ist. Allerdings ist heute Zeit und damit verbunden auch Dokumentation Mangelware. Daher konzentiert man sich auf das Wesentliche und greift für solche Themen gerne auf Hilfe zurück. Unabhängig davon, wie diese erst einmal aussieht.Solange es nicht um Hochlast-Systeme geht, verwenden wir inzwischen Plesk für alle Systeme.
Es gibt aber auch genug fertig Open-Source-Systeme.
wir haben uns vor knapp einem Jahr ebenfalls zu dem Schritt entschlossen. Wir setzen hingegen KeyHelp ein. Da es unsereren primären Anforderungen entspricht. Nach und nach werden alle Internetseiten portiert.Es gibt aber auch genug fertig Open-Source-Systeme.
Gruß,
Dani