Jump to content
Froxlor Forum
  • 0

502 Bad Gateway - Socket Problem bei nginx mit PHP-FPM


loredeluxe

Question

Hallo zusammen,

 

ich habe mich grade an einer Konfiguration mit Froxlor und nginx+php-fpm auf einem aktuellem Debian Wheezy System versucht und bin dabei bisher gem?? dieser Anleitung vorgegangen http://redmine.froxlor.org/projects/froxlor/wiki/HandbookNginx_phpfpm

 

Allerdings bin ich nun auf ein Problem mit den Sockets gesto?en.

 

/var/log/nginx/error.log

2015/01/18 14:48:27 [crit] 2876#0: *1 connect() to unix:/var/run/nginx/froxlor.panel-www.xyz.de-php-fpm.socket failed (2: No such file or directory) while connecting to upstream, client: 77.64.245.114, server: www.xyz.de, request: "GET /froxlor/admin_configfiles.php?page=configfiles&s=680de2b1fde72a885ad84bc109ab990f&distribution=debian_wheezy&service=etc&daemon=cron HTTP/1.1", upstream: "fastcgi://unix:/var/run/nginx/froxlor.panel-www.xyz.de-php-fpm.socket:", host: "www.xyz.de", referrer: "http://www.xyz.de/froxlor/admin_configfiles.php?page=configfiles&s=680de2b1fde72a885ad84bc109ab990f&distribution=debian_wheezy&service=etc"

Das /var/run/nginx Verzeichnis existiert nicht, also habe ich es manuell erstellt.

# mkdir /var/run/nginx
# chown www-data:www-data /var/run/nginx
# chmod 770 /var/run/nginx
# /etc/init.d/php5-fpm restart

Die Sockets werden nun korrekt angelegt und alles l?uft soweit

# ls -ahl /var/run/nginx
total 0
drw-rw----  2 www-data     www-data      80 Jan 18 15:11 .
drwxr-xr-x 18 root         root         700 Jan 18 15:11 ..
srw-rw-rw-  1 xyz          xyz            0 Jan 18 15:11 xyz-xyz.www.xyz.de-php-fpm.socket
srw-rw-rw-  1 froxlorlocal froxlorlocal   0 Jan 18 15:11 froxlor.panel-www.xyz.de-php-fpm.socket

1. Frage: K?nnten diese hohen Rechte auf /var/run/nginx und auf die Sockets nicht zu einem Sicherheitsproblem werden?

2. Frage: Der /var/run/nginx/ Ordner ist nach einem Reboot logischerweise wieder weg. Was ist die eleganteste L?sung, diesen beim Boot wieder zu erstellen? Ich habe hier im Forum gelesen, dass das jemand ?ber das /etc/init.d/php-fpm script regelt, aber wird das bei einem update von php-fpm nicht wieder ?berschrieben?

 

 

Viele Gr??e und schon mal Danke f?r eure Antworten und Anregungen :)

 

Link to comment
Share on other sites

4 answers to this question

Recommended Posts

Kannst du als User froxlorlocal auf das Socket zugreifen?

 

Wir haben hier auch das Problem, dass die Sockets von Nginx nicht mehr genutzt werden k?nnen (listen.mode 0660 bei php-fpm). Damit das wieder klappt, muss man wohl www-data manuell in die jeweilige ftp_group der jeweiligen Socketbesitzer stecken, aber das kann ja irgendwie auch keine L?sung sein. In unserem Fall war in der Gruppe nur der Nutzer und froxlorlocal, aber nicht www-data.

Link to comment
Share on other sites

Wir haben hier auch das Problem, dass die Sockets von Nginx nicht mehr genutzt werden k?nnen (listen.mode 0660 bei php-fpm). Damit das wieder klappt, muss man wohl www-data manuell in die jeweilige ftp_group der jeweiligen Socketbesitzer stecken, aber das kann ja irgendwie auch keine L?sung sein. In unserem Fall war in der Gruppe nur der Nutzer und froxlorlocal, aber nicht www-data.

 

Darum gibt es ja libnss-mysql und die entsprechende config daf?r, die gew?hrt dem webserver-user n?mlich gruppen-rechte auf die kunden-accounts...

Link to comment
Share on other sites

Kannst du als User froxlorlocal auf das Socket zugreifen?

 

Wir haben hier auch das Problem, dass die Sockets von Nginx nicht mehr genutzt werden k?nnen (listen.mode 0660 bei php-fpm). Damit das wieder klappt, muss man wohl www-data manuell in die jeweilige ftp_group der jeweiligen Socketbesitzer stecken, aber das kann ja irgendwie auch keine L?sung sein. In unserem Fall war in der Gruppe nur der Nutzer und froxlorlocal, aber nicht www-data.

 

Also laut dem Guide soll man ja www-data zur gruppe froxlorlocal hinzuf?gen. Somit hat www-data ja die Rechte von froxlorlocal. Richtig m?sste demzufolge also ein

chown froxlorlocal:froxlorlocal /var/run/nginx/

oder?

 

Welche Dateirechte auf den Ordner sind dann korrekt? 755?

Das execute bit muss auf dem Ordner doch immer gesetzt sein, weil er sonst vom user gar nicht erst betreten werden kann, oder irre ich mich da?

 

Wie habt ihr das Problem mit den in /var/run/nginx Ordner gel?st, der ja beim Boot verschwindet?

 

 

 

Darum gibt es ja libnss-mysql und die entsprechende config daf?r, die gew?hrt dem webserver-user n?mlich gruppen-rechte auf die kunden-accounts...

 
libnss-mysql hab ich gem?? dem Guide konfiguriert.
Link to comment
Share on other sites

Also laut dem Guide soll man ja www-data zur gruppe froxlorlocal hinzuf?gen. Somit hat www-data ja die Rechte von froxlorlocal. Richtig m?sste demzufolge also ein

chown froxlorlocal:froxlorlocal /var/run/nginx/
oder?

Nicht der froxlorlocal-user soll da zugreifen k?nnen, sondern der Webserver-User. Der Ordner muss also ihm geh?ren. Die Dateien die dort drinliegen geh?ren dem jeweiligen Kunden (und auch froxlorlocal, sofern fpm auch f?r den froxlor.vhost verwendet wird), und auf die braucht der Webserver-User Zugriff. Daher packt froxlor den webserver-User mit in die ftp_groups-Tabelle, so dass "www-data" zur kunden-gruppe geh?rt.

 

Benutze am besten den aktuellen Release-Candidate, hier sorgt froxlor selbst f?r die n?tigen Berechtigungen und setzt alles korrekt. Auch die aktuelle libnss-mysql-Konfiguration ist wichtig daf?r, dass das eben geschilderte genau so funktioniert.

 

Welche Dateirechte auf den Ordner sind dann korrekt? 755?

Froxlor setzt aus Sicherheitsgr?nden 750, deswegen packen wir ja den Webserver-User als Gruppe zum Kunden. Auch das ist erst im aktuellen Release-Candidate vollst?ndig korrekt implementiert.

 

Wie habt ihr das Problem mit den in /var/run/nginx Ordner gel?st, der ja beim Boot verschwindet?

Ich meine mich erinnern zu k?nnen, dass es was das angeht schon posts hier im forum gibt. Du kannst einfach ein

mkdir -p /var/run/nginx/

in das init.d-script vom nginx packen (in die start-funktion).

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...