Web-Server Installationsverzeichnis

Debian macht sich hervorragend als Web- und Mailserver. Schau auch in den " Tipps und Tricks"-Bereich.
Antworten
memo87
Beiträge: 4
Registriert: 02.07.2019 00:00:03

Web-Server Installationsverzeichnis

Beitrag von memo87 » 02.07.2019 00:14:25

Hallo zusammen,

ich spiele gerade mit Debian und habe zum Testzweck einen Web-Server installiert.
Alles was mit Web zu tun hat, habe ich /var/www/html kopiert. Soweit funktioniert alles.
Jedoch habe ich paar mal entdeckt, dass anstatt /var/www/html auch das Benutzer home-Verzeichnis verwendet wird.

Zum Beispiel:
/home/benutzername
oder sogar nur /home

Ich würde gern wissen, warum man sowas macht und welche Vor- und Nachteile diese mit sich bringt.
Oder ob das überhaupt mit Sicherheit zu tun hat.

Danke

eggy
Beiträge: 3331
Registriert: 10.05.2008 11:23:50

Re: Web-Server Installationsverzeichnis

Beitrag von eggy » 02.07.2019 06:23:24

Meist eine Folge von "ich hab nem Tutorial gefolgt und der hatte auch keine Ahnung".

Beispiel:
Alice will Ihren Server sicher konfigurieren und hat gelesen, dass man daher ssh Zugriff über SSH-Keys aktiviert. Sehr gute Idee, also macht sie das. Bob will Daten auf Alice Webseite ablegen, Alice findet das gut also installiert sie etwas mit dem Bob Dateien hochladen kann. Nun ... was passiert, wenn Alice nun den Speicherort von /var/www nach /home verschiebt? Bob bekommt Zugriff auf alles was unter /home liegt. Und alles heisst hier auch wirklich alles. Incl der Datei in der die Zugangsberechtigungen für den SSH Zugang liegen. Also ist das nächste, was Bob macht: sich einen neuen ssh key erzeugen, den public Teil auf den Server hochladen und schon hat er Shellzugang. Bob stöbert erstmal ausgiebig in Alice privaten Daten.
Ausserdem hatte Alice ja noch diverse Tutorials gelesen, in denen stand, dass man sudo brauchen würde. Also installierte Alice auch sudo (schlechte Idee) und passte es wie im Tutorial empfohlen an (sehr schlechte Idee). Der nächste Schritt von Bob: einfach kleines sudo eingeben. Nun ist Bob root und kann mit dem Server machen was er will.

Home freigeben macht man ohne triftigen Grund besser nicht. Dass der Webserver bei vielen (wenn nicht sogar den meisten) Distributionen unter seinem eigenen User (bei Debians Apache2 z.B. www-data) läuft, nen eigenes Verzeichnis hat und nur Zugriff auf Daten haben soll, die dem jeweiligen User (hier www-data) zugeordnet sind, ist Absicht und sinnvoll.

Vorteile? Naja, Du hast die Verzeichnisstruktur 1:1 freigegeben, in seltenen Fällen ist sowas sogar mal sinnvoll. Z.B. wenn die Kiste nur als reiner Webserver dient, alle Accounts entsprechend abgesichert sind, die User nur in Ihr jeweiliges Verzeichnis dürfen um dort Dateien zu plazieren und der Webserver so eingstellt ist, dass er bestimmte Verzeichnisses nicht rausgibt. Vereinfacht unter Umständen die Administration, obs ne gute Idee ist, sei mal dahin gestellt.

mludwig
Beiträge: 797
Registriert: 30.01.2005 19:35:04

Re: Web-Server Installationsverzeichnis

Beitrag von mludwig » 02.07.2019 08:33:30

Das Verzeichnis /home/benutzer oder besser /home/benutzer/www als Web-Directory nimmt man gerne, wenn man auf einem System mehrere VHosts betreibt, die jeweils von einem Benutzer gepflegt werden. Jeder Nutzer bekommt per (s)ftp Zugriff auf sein Home-Verzeichnis (und nur darauf, per chroot einsperren), und kann so Inhalte für seine Seite hochladen.

uname
Beiträge: 12075
Registriert: 03.06.2008 09:33:02

Re: Web-Server Installationsverzeichnis

Beitrag von uname » 02.07.2019 10:41:33

Erst mal Willkommen im Forum.

Hast du überhaupt entsprechende Debian-Pakete aus den Paketquellen wie Debianapache2 verwendet oder das Zeug sonstwo gezogen?
Welcher Anleitung bist du gefolgt? Welche Konfigurationsdateien hast du geändert?

memo87
Beiträge: 4
Registriert: 02.07.2019 00:00:03

Re: Web-Server Installationsverzeichnis

Beitrag von memo87 » 02.07.2019 17:38:16

@eggy
Danke für Deine ausführliche Antwort. Ich glaube langsam kann ich nachvollziehen. :)

@mludwig
Danke Dir. Das ist dann ne coole Sache.

@uname
Ich habe einen minimalen Server mit ssh und Web-Server installiert. apache2 und MySQL sind am Board.
Außer eine Datenbank anzulegen habe ich noch nichts.

Ich wollte daher alles, was nötig ist, im Vorfeld wissen, bevor ich anfange.

PS: Ich bin kein blutiger Linux-Anfänger. Jedoch mit Web-Server-Konfiguration- und Sicherheit habe ich noch keine praktische Erfahrungen gemacht.

Ich bin für jede Antwort sehr dankbar.

Antworten