Page 1 of 1

Rechtevergabe

Posted: 2011-09-09 10:50
by AWOHille
Hallo,

ich habe im Netz gelesen, das man für den Bereich /var/www folgende Rechte vergeben kann:

www-data:root

Wäre es nicht sinnvoller das Root Eigentümer ist und die Gruppe www-data?

Gruß Hille

Re: Rechtevergabe

Posted: 2011-09-09 11:10
by ddm3ve
Warum sollte das sinnvoller sein?

Theoretisch reicht auch ein root:root, das wäre vermutlich besser kommt aber darauf an, wohin das doc-root gesetzt. ist bzw. das server-root.

Re: Rechtevergabe

Posted: 2011-09-09 11:52
by dante
An sich ist das ne interessante Frage.
Wenn jetzt mein Doc-Root unter /var/www liegt, was macht dann dort Sinn? Ich habe es bisher so gehandhabt, dass ich

Code: Select all

chown -R www-data:www-data .
gesetzt habe.

Ist das zu restriktiv bzw. machen andere Kombinationen mehr Sinn?

Gruß
dante

Re: Rechtevergabe

Posted: 2011-09-09 12:01
by ddm3ve
Bei mir sieht ers hirarchisch wie folgt aus:

drwxr-xr-x root root /srv
drwxr-xr-x root root /srv/www
drwxr-xr-x root root /srv/www/vhosts
drwxr-xr-x web web /srv/www/vhosts/domain.tld


Siehe dazu aber auch:
http://www.rootforum.org/wiki/Inhaltsverzeichnis

Kapitel hochverfügbare Webserver planen und Konfigurieren.


Es macht in der Tat Sinn, dem Benutzer root und der Gruppe root die Ordner zu geben, schliesslich soll auch der httpd nicht durch eine Lücke dort schreiben können.

Re: Rechtevergabe

Posted: 2011-09-09 14:02
by rudelgurke
Handhabe ich ähnlich - Vhosts mit Suexec (PHP) und pro Vhost einen User und eine Gruppe angelegt.
"www-data" ist Mitglied in der Gruppe und das Ganze wird dann zu:

ftp_site_1:php_site_1 drwxr-x--- /var/www/vhost_1
ftp_site_2:php_site_2 drwxr-x--- /var/www/vhost_2
ftp_site_3:php_site_3 drwxr-x--- /var/www/vhost_3

Wobei "www-data" jeweils Mitglied in den Gruppen (php_site_1 usw.) ist.

Die FTP User sind nur für FTP da, im Grunde darf der Webserver (und auch PHP durch Suexec) nur lesen.
Für Cache Verzeichnisse und ähnliches werden die Rechte einzeln eingeräumt.

Ziel des Ganzen ist dass der Webserver und PHP nur dort schreiben dürfen, wo unbedingt nötig. Der ganze Rest ist read-only.