Welcher Benutzer sollte / var / www auf Ubuntu 9.04 Server besitzen?

7

Ich habe LAMP auf Ubuntu 9.04 Server und die Standardinstallation hat root: root, dem der Ordner / var / www gehört. Ich entdeckte dies, als ein anderer Dienst, Hudson, nicht in dieses Verzeichnis schreiben konnte. Ich möchte, dass mein Hudson-Benutzer die Berechtigung hat, in / var / www zu schreiben. Sollte der Benutzer von www-data der Eigentümer von / var / www sein und Hudson ein Mitglied der Gruppe von www-data sein, oder sollte ich mit dem Standardbenutzer und der Standardgruppe gehen und Hudson zu einem Mitglied von root machen? Letzteres scheint falsch. Das wirft also die Frage auf, welcher Benutzer / var / www besitzen sollte. (Und für diejenigen mit viel mehr Erfahrung als ich, gibt es in diesem Szenario etwas noch Besseres als die beiden Lösungen, die ich gesehen habe?)

Michael Prescott
quelle

Antworten:

12

Sollte der Benutzer von www-data der Eigentümer von / var / www sein?

Warum wird der Apache-Prozess von www-data ausgeführt, aber das / var / www gehört root? Besteht das Risiko, dass www-data den Ordner besitzt und den Prozess ausführt?

Ihr Webserver läuft als www-Daten. Wenn Apache in der Lage ist, in / var / www zu schreiben, und Sie etwas falsch konfiguriert haben oder eine fehlerhafte Webanwendung ausführen oder Apache selbst einen ausnutzbaren Fehler aufweist, kann eine böse Person im Internet Dinge in / schreiben var / www. Wann immer möglich, sollten Sie Dienstkonten immer die geringsten Berechtigungen geben, die sie für den Betrieb benötigen.

Gibt es etwas noch Besseres als die beiden Lösungen, die ich gesehen habe?

Erstellen Sie eine neue Gruppe und ändern Sie den Besitz der Gruppe / var / www in root: group. Fügen Sie der Gruppe alle Benutzer hinzu, die in diesem Ordner veröffentlichen müssen. Möglicherweise möchten Sie den Ordner auch mit dem Bit setgid markieren und die Umask Ihrer Benutzer so anpassen, dass alles, was sie in diesen Ordner schreiben, von allen anderen Mitgliedern dieser Gruppe geschrieben werden kann.

Zoredache
quelle
Danke Zoredach, eine neue Gruppe zu gründen und den Besitzer zu wechseln, klingt gut für mich. Ich werde etwas über Setgid-Bits und Umasks lernen.
Michael Prescott
1
Warum wird der Apache-Prozess von www-data ausgeführt, aber das / var / www gehört root? Besteht das Risiko, dass www-data den Ordner besitzt und den Prozess ausführt?
Michael Prescott
Ja, Sie möchten, dass root: group / var / www besitzt. Wenn Sie festlegen, dass es Eigentum von www-data ist, können böswillige Benutzer durch Ausnutzen von Apache in Ihr Verzeichnis / var / www schreiben.
Trent Scott