Jump to content
Froxlor Forum
  • 0

Wordpress Verzeichnis-Rechte Problem


clarkx86

Question

Hallo liebe Froxlor-Community,

ich muss leider noch einmal eine Frage stellen. Ich suche jediglich Rat, da ich jetzt nicht ohne weiteres Änderungen an meinem System vornehmen möchte, ohne genau zu wissen was ich da eigentlich mache und ob dies möglicherweise Sicherheitsrisiken mit sich bringt, und wie ich diese Änderungen notfalls wieder rückgängig machen könnte ohne groß rumzuexperimentieren.

Hier einmal vorweg erstmal Specs zu meinem System:
Ubuntu 18.04
Apache 2.4

Nun habe ich folgendes Problem. Ich habe Wordpress installiert und mit meiner Datenbank verbunden, erfolgreich konfiguriert, alles kein Problem.
Das erste was mir auffiel ist, dass wenn ich Plugins direkt aus dem Wordpress-Dashboard installieren möchte, mich Wordpress bittet die FTP-Zugangsdaten einzugeben, da es denke ich mal keine Schreibrechte auf wp-content besitzt. Auch einige Plugins von Wordpress teilen mir nun mit, dass sie möglicherweise nicht funktionieren und ich bitte bestimmte Verzeichnisse per chmod auf 0777 oder 0774 setzten soll.
Klar könnte ich das jetzt manuell machen, aber ich weiß von meinem vorherigen Drittanbieter-Hoster dass da alles "out-of-the-box" funktioniert hatte, also habe ich definitiv etwas noch nicht oder falsch konfiguriert.

Ich habe selbstverständlich schon gegoogelt und auch hier im Forum gelesen, dass ich FCGID oder PHP-FPM installieren sollte (was ich bisher noch nicht habe) und sich das Problem damit löst. Jedoch waren die beschriebenen Szenarien nicht 1 zu 1 wie bei mir, also möchte ich das jetzt nicht "einfach mal" probieren ohne zu wissen ob das überhaupt mein Problem löst. mod_php läuft laut der PHPinfo() Seite in Froxlor.

Ich werde mich jetzt in der Zwischenzeit weiter mit FCGID und PHP-FPM beschäfitgen und mir dazu noch einiges durchlesen.
Falls jemand jedoch eine Idee hat poste ich gerne auch noch jegliche Logs, etc., falls das irgendwie weiterhilft.

Vielen Dank schon Mal und ich wünsche ein guten Start ins wohlverdiente Wochenende ;),

Lg

Link to comment
Share on other sites

7 answers to this question

Recommended Posts

  • 0

PHP wird mit fcgid oder PHP-FPM unter dem Benutzer des Kunden ausgeführt. Daher hast du da keine Berechtigung Probleme. Du kannst aber auch nur libnss-mysql oder libnss-extrausers einrichten (Konfiguration -> other (system)) damit wird der Webserver Benutzer (www-data) in die Gruppe des jeweiligen Kunden gepackt, vllt reicht das schon aus - probiere es einfach Mal.

Meine Erfahrungen mit Wordpress sind problemlos, nutze aber auch PHP-FPM ;)

Link to comment
Share on other sites

  • 0

Danke für die super schnelle Antwort :)!!
Das hat mir schon mal sehr weitergeholfen!

Seit den letzten paar Stunden versuche ich PHP-FPM zu konfigurieren und ich sage nur eins: Zum Glück gibt es die Snapshot-Revert Funktion bei meinem Hoster ?!
 

Jetzt bin ich in weitere Probleme geraten. Leider schien "libnss-extrausers" alleine nichts zu bewirken, deshalb versuche dazu noch PHP-FPM einzurichten.

Folgende Schritte habe ich zur Vorbereitung befolgt:

  1. Konfiguration > Ubuntu Xenial (16.04.x) »  Sonstige (System) »  libnss-extrausers (alternative to libnss-mysql, required for FCGID/php-fpm/mpm-itk) durchgeführt
  2. Konfiguration > Ubuntu Xenial (16.04.x) »  Sonstige (System) »  PHP-FPM (alternative to mod_php) durchgeführt
  3. Einstellungen > Systemeinstellungen  > Häkchen bei "Verwende libnss-extrausers anstatt libnss-mysql"

(ich verwende den Ubuntu 16.04-Reiter, da es keine 18.04-Auswahl gibt und ich bisher aber auch noch keine Komplikationen hatte)

Danach habe ich in den Einstellungen die Option "PHP-FPM" von Nein auf Ja gesetzt und versucht, den weiteren Anweisungen des verlinkten Git-Wiki Artikels zu folgen.
Da sich diese Anleitung jedoch auf PHP 5 bezieht, habe ich alle Packages und Pfade dementsprechend auf mein System angepasst (z.B. libnss-mysql-bg entfernt, php-fpm statt php5-fpm, etc.).
Meine erste Frage ist, benötigt libnss-extrausers keine weitere Konfiguration (anders als libnss-mysql)? Mir werden nämlich keine weiteren Konfigurationsschritte im Froxlor Panel angezeigt, anders als hier beschrieben.
Auch der "apache2-mpm-worker" lässt sich später nicht deaktivieren, da der mpm-prefork noch aktiviert ist. Lässt sich dieser getrost deaktivieren?

Beim meinem letzten Versuch habe ich mir irgendwie wieder alles zerschossen...


Möglicherweise habe ich mich bei dem ganzen Thema aber auch komplett verlaufen und/ oder gehe ganz falsch vor, das gestehe ich mir dann aber auch gerne ein :D!

Ich bedanke mich noch einmal für die tolle Hilfe bisher und wünsche noch einen schönen Abend,
Lg :)

 

Link to comment
Share on other sites

  • 0

Was konkret ist denn "zerschossen", welche Fehlermeldungen erhälst du etc.? 

Du brauchst immer nur entsprechend die angezeigten Konfigurationsschritte auszuführen, es ist alles da. Wichtig immer: ERST die Einstellungen anpassen, DANN Konfiguration ausführen, teilweise hängen die auszuführenden Befehle ja von den Einstellungen ab.

Und ja, natürlich musst du entsprechend alle Pfade zu PHP o.Ä. an dein System und deine Anforderungen anpassen - dafür sind es ja Einstellungen.

Im Grunde ist eine Umstellung von mod_php auf PHP-FPM eine Sache von 10 min ohne große Unterbrechung der Erreichbarkeit

Link to comment
Share on other sites

  • 0
vor einer Stunde schrieb d00p:

Was konkret ist denn "zerschossen", welche Fehlermeldungen erhälst du etc.? 

Ich hatte es geschafft mich komplett aus dem Froxlor Control Panel auszusperren das alle Rechte vermurkst waren, ich kann mich leider nicht mehr genau an die angezeigte Meldung erinnern, ist aber auch nicht mehr aktuell :), da hatte ich auf jeden Fall eindeutig was falsch gemacht ?. Jedoch:

Ich hab jetzt nochmal von einem frischen Snapshot probiert alles zu konfigurieren, sprich zuerst Einstellungen, dann Konfiguration. Es scheint jetzt auch alles zu laufen, funktionieren tut es jedoch leider noch nicht ganz.

Vorweg, ich habe den folgenden Schritt in der Anleitung auf Grund von libnss-extrausers statt libnss-mysql nun übrigens übersprungen, ich hoffe das ist "richtig" so :):

chmod 600 /etc/libnss-mysql-root.cfg /etc/libnss-mysql.cfg

Ich habe die fastcgi.conf bearbeitet, den froxlorlocal User und Gruppe 9999 angelegt, Pfade im Control Panel angepasst und die Konfigurationsdateien neu schreiben lassen und siehe da: Der php7.2-fpm.service startet und läuft, auch der Befehl ls -al /var/customers/webs/ zeigt mir den richtigen Kunden des jeweiligen Ordners an.

Nur auf der PHPinfo() Seite im Control Panel steht bei Server API immer noch "Apache 2.0 Handler" und auch eine Suche mit STRG+F zeigt keine Treffer von "FPM" (außer den "PHP-FPM Versionen"-Tab im linken Seitenmenü), lediglich "mod_fastcgi" unter Loaded Modules.

Auch ein manueller neustart von Apache, des PHP-FPM services oder dem ganzen Server ändert nichts in der PHPinfo().

(Ich möchte auch nicht off-topic werden, aber mir ist noch aufgefallen dass wenn ich den Cronjob per SSH manuell erzwinge, folgende Meldung erscheint:

sh: 1: /etc/init.d/bind9: not found
[error] Error while running `/etc/init.d/bind9 reload`: exit code (127) - please check your system logs

, das aber nur mal so nebenbei, hat bisher keine Probleme gemacht!)


Vielen lieben Dank für die Hilfe soweit, das ist echt Goldwert! :)

EDIT: Ich komme über den Browser nun auch nicht mehr auf die Wordpress-Seite, stattdessen lande ich auf einem 403:

You don't have permission to access /fastcgiphp/index.php on this server.

Auf dem FTP ist aber noch alles vorhanden.

Lg

 

 

Link to comment
Share on other sites

  • 0
7 minutes ago, clarkx86 said:

Nur auf der PHPinfo() Seite im Control Panel steht bei Server API immer noch "Apache 2.0 Handler"

Sichwort: Einstellungen -> Froxlor Vhost Einstellungen

Du musst froxlor explizit sagen das es selbst auch fpm nutzen soll

7 minutes ago, clarkx86 said:

(Ich möchte auch nicht off-topic werden, aber mir ist noch aufgefallen dass wenn ich den Cronjob per SSH manuell erzwinge, folgende Meldung erscheint:

sh: 1: /etc/init.d/bind9: not found
[error] Error while running `/etc/init.d/bind9 reload`: exit code (127) - please check your system logs

, das aber nur mal so nebenbei, hat bisher keine Probleme gemacht!)

Wenn du keinen eigenen Nameserver auf dem Server betreist, deaktiviere doch einfach "Nameserver" komplett in den Einstellungen

8 minutes ago, clarkx86 said:

EDIT: Ich komme über den Browser nun auch nicht mehr auf die Wordpress-Seite, stattdessen lande ich auf einem 403:

You don't have permission to access /fastcgiphp/index.php on this server.

Apache logs des kunden?

Link to comment
Share on other sites

  • 0
vor 6 Stunden schrieb d00p:

Sichwort: Einstellungen -> Froxlor Vhost Einstellungen

Du musst froxlor explizit sagen das es selbst auch fpm nutzen soll 

Ich habe dort eigentlich für diese Option einen Harken gesetzt:

image.thumb.png.7c05ea3e85accce3f083655d634df9ce.png

 

vor 6 Stunden schrieb d00p:

Apache logs des kunden? 

Darin steht mehrmals wiederholt:

[Fri Jul 12 21:40:26.393950 2019] [authz_core:error] [pid 1599] [client <IP-Adresse>:50068] AH01630: client denied by server configuration: /etc/php/7.2/fpm/pool.d/clarkx86/<Domain>/fpm.external

 

vor 6 Stunden schrieb d00p:

deaktiviere doch einfach "Nameserver" komplett in den Einstellungen

Uuuuund das hat's direkt behoben! Danke dir :)!!

-  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - 

EDIT: So! Dank deiner Hilfe hat jetzt alles geklappt! Ich hab nochmal alles in der korrekten Reihenfolge konfiguriert und ausgeführt und siehe da! Es klappt und bei Server API steht nun auch "FPM/FastCGI"!

Das wichtigste war einfach wirklich, wie du auch gesagt hast, zuerst in den Einstellungen alle Optionen zu wählen und die Pfade (!!!) einzustellen, den Cronjob zu stoppen und dann die Konfigurationsschritte für libnss-extrausers und PHP-FPM auszuführen. Danach hat alles geklappt.

Ich danke dir, jetzt kann ich endlich ruhig schlafen ?!

Meine letzte Frage wäre nur noch die mit dem mpm_worker welchen ich durch den aktivierten mpm_prefork nicht enablen kann, hättest du da zufälligerweise noch eine Idee? Kann man mpm_prefork im Normalfall ruhigen gewissens ausschalten?

 

Link to comment
Share on other sites

  • 0
10 hours ago, clarkx86 said:

Meine letzte Frage wäre nur noch die mit dem mpm_worker welchen ich durch den aktivierten mpm_prefork nicht enablen kann, hättest du da zufälligerweise noch eine Idee? Kann man mpm_prefork im Normalfall ruhigen gewissens ausschalten

Du musst erst das eine deaktivieren bevor du das andere aktivieren kannst ;)

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


×
×
  • Create New...