ein einzelner Benutzer pro Webserver / virtuellem Host und Benutzer http löschen

Status
Für weitere Antworten geschlossen.

PackElend

Benutzer
Mitglied seit
22. Okt 2011
Beiträge
85
Punkte für Reaktionen
0
Punkte
0
Hallo,
ich werde mehrere Webserver installieren werde, zumindest nextcloud und einen Fotoserver, der Zugriff auf Ordner außerhalb von /web hat, um auf Daten und Fotos zuzugreifen.
Ich möchte nicht die Sicherheit aller Dateien auf Spiel setzten möchte, wenn ein Webserver kompromittiert wird, da sie alle unter dem Benutzer http laufen. Aus diesem Grund möchte ich ein Benutzerkonto pro Webserver / virtuellem Host anlegen.

Macht es Sinn oder habe ich etwas falsch eingeschätzt?
Ist das leicht machbar?

Dankeschön
Stefan
 

blurrrr

Benutzer
Sehr erfahren
Mitglied seit
23. Jan 2012
Beiträge
6.204
Punkte für Reaktionen
1.104
Punkte
248
Du könntest z.B. ein vDSM laufen lassen, dann hättest Du schon ein "mehr" an Sicherheit. Dazu noch einen Proxy davor, fertig. Apache oder Nginx in mehreren Instanzen mit mehreren Benutzern laufen zu lassen... Vergiss die Idee, das gibt nur Probleme. Eine andere Möglichkeit wären z.B. noch Dockercontainer... Photostation halt via DSM, Nextcloud ggf. im Dockercontainer (oder einer vollvirtualisierten Maschine (VMM)).
 

PackElend

Benutzer
Mitglied seit
22. Okt 2011
Beiträge
85
Punkte für Reaktionen
0
Punkte
0
Sali
Ich habe eine alte DiskStation, da ist nix mit docker und vDMS
.
Mein NAS ist die Tage nicht erreichbar von daher kann ich es nicht selber prüfen. Es ist nicht so, daß ich pro Web Server und php Konfiguration einen virtuell host anlegen kann. Unter diesem installiere ich dann die Web-Anwendung.

Warum kann ich dann nicht pro Virtual Host erstellen. Es stellt sich doch nur die Frage auf was der Benutzer http alles Zugriff hat und muss dies dann übertragen.
Alternativ könnte ich einen zusätzlichen Benutzer für den Zugriff außerhalb von /Web einrichten (in der Gruppe http).
Ich muss aber dafür sorgen, daß die Webserver auch (zusätzlich) unter zusätzlichen Benutzer läuft.
 

blurrrr

Benutzer
Sehr erfahren
Mitglied seit
23. Jan 2012
Beiträge
6.204
Punkte für Reaktionen
1.104
Punkte
248
Sicherlich kannst Du diverse vHosts anlegen, das hat aber erstmal nichts mit dem Benutzer zu tun, mit welchem der Webserver ausgeführt wird. Kannst theoretisch auch einfach ein zweites (oder ein neues) NAS nehmen (kleines 1-Bay-Gerät), oder einfach z.B. einen Raspberry Pi.

EDIT: Alternativ irgendwo einen Rootserver (oder ein Webpaket) anmieten und die Webseiten darüber laufen lassen. Dann ist es auch "extern" und man muss sich über die Daten im heimischen Netzwerk keine Sorgen mehr machen :)
 
Zuletzt bearbeitet:

ottosykora

Benutzer
Mitglied seit
17. Apr 2013
Beiträge
8.297
Punkte für Reaktionen
912
Punkte
268
also normalerweise läuft alles über den gleichen Webserver. Klar kannst du mehrere Apache installieren, aber deswegen alleine läuft nicht jeder virtuelle Host über einen anderen Server. Virtueller Host ist noch kein Webserver.
 

PackElend

Benutzer
Mitglied seit
22. Okt 2011
Beiträge
85
Punkte für Reaktionen
0
Punkte
0
Kannst theoretisch auch einfach ein zweites (oder ein neues) NAS nehmen (kleines 1-Bay-Gerät), oder einfach z.B. einen Raspberry Pi.
In dem Fall könnte ich micht auch vom DMS komplett verabschieden und auf einen Server mit Linux aufsetzten, was mittelfristig auch das Ziel sein wird, um auch der Geräteflut entgegenzuwirken.
Ich weiss ich könnte
...Alternativ irgendwo einen Rootserver (oder ein Webpaket) anmieten und die Webseiten darüber laufen lassen. Dann ist es auch "extern" und man muss sich über die Daten im heimischen Netzwerk keine Sorgen mehr machen :)
Werde ich vielleicht irgendwann machen aber momentan möchte ich noch in meinen vier Wänden bleiben

Von daher möchte ist erstmals bei dem einem Geräte bleiben und damit noch ein wenig experimentieren.
Sicherlich kannst Du diverse vHosts anlegen, das hat aber erstmal nichts mit dem Benutzer zu tun, mit welchem der Webserver ausgeführt wird.
Könntest du die ein wenig detaillierter ausführen? Danke
 

PackElend

Benutzer
Mitglied seit
22. Okt 2011
Beiträge
85
Punkte für Reaktionen
0
Punkte
0
Wenn "Sicherheit" das "Ziel" ist, ist "experimentieren" definitiv der falsche Weg :p
experimentieren ist hier wohl der falsche Begriff, optimieren zur Stärkung der Sicherheit wäre wohl besser geeignet :eek:.


Du willst Details zu vhosts?
mir geht es um Details zum http Benutzer und wie man dafür sorgt, dass der Webserver unter dem Benutzerkonto xy ausgeführt wird.
 

blurrrr

Benutzer
Sehr erfahren
Mitglied seit
23. Jan 2012
Beiträge
6.204
Punkte für Reaktionen
1.104
Punkte
248
Najo, da müsste man entsprechende zusätzliche Instanzen unter einem anderen Benutzer starten, allerdings müsste man dann auch sämtlichen Kram doppelt und dreifach pflegen und die zusätzlichen Infos beim Start mitgeben. Grundsätzlich läuft das ganze - unter den Bedingungen - schon eher unter dem Motto: keine Arme, keine Kekse. "Ich will aber" reicht da irgendwie nicht so als Grundlage. Zumal auf der DS ja wohl Deine Nutzdaten liegen, von daher ist das so gesehen noch viel weniger als Spielwiese angebracht. Wenn es Dir so sehr um "Sicherheit" geht, outsourcen. Dann ist Dein Netz in Sicherheit :p
 

PackElend

Benutzer
Mitglied seit
22. Okt 2011
Beiträge
85
Punkte für Reaktionen
0
Punkte
0
Guten Tag zusammen,
ich bin ein wenig weiter gekommen und man kann dies wohl ganz elegant mit dem nginx als proxyserver lösen. Die jeweiligen webserver kommunizieren dann via UNIX Sockets, damit läuft die Rechteverwaltung über die Benutzerrechte des Dateisystems.
Ich frage mich nur noch, wie ich die web server dann im LAN erreiche.
Zudem muss man auch noch der Nginx-Konfigurator berücksichtigt werden.

main proxy file

Rich (BBCode):
server {
    listen 80;
    listen [::]:80;
    listen 443 ssl;
    listen [::]:443 ssl;
    #include letsencrypt.conf;
    server_app1 app1subdomain.domain.eu;
    include app1location.conf
       }

server {
    listen 80;
    listen [::]:80;
    listen 443 ssl;
    listen [::]:443 ssl;
    #include letsencrypt.conf;
    server_app2 app2subdomain.domain.eu;
    include app1location.conf
       }

app1location.conf (location file for proxied web server)
Rich (BBCode):
location / {            
    proxy_pass http://unix:/home/app1/app1.com.unix_socket;
    proxy_set_header X-Real-IP $remote_addr; #Authorization
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

    proxy_http_version 1.1;
    proxy_set_header Connection "";
    proxy_buffering off;
    client_max_body_size 0;
    proxy_read_timeout 36000s;
    proxy_redirect off;
}

app2location.conf
(location file for proxied web server)

Rich (BBCode):
   location / {            
        proxy_pass http://unix:/home/app2/app2.com.unix_socket;
        proxy_set_header X-Real-IP $remote_addr; #Authorization
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

        proxy_http_version 1.1;
        proxy_set_header Connection "";
        proxy_buffering off;
        client_max_body_size 0;
        proxy_read_timeout 36000s;
        proxy_redirect off;
               }
 
Zuletzt bearbeitet:
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat