DSM 6.x und darunter DSM 6.0: WebStation-Config

Alle DSM Version von DSM 6.x und älter
Status
Für weitere Antworten geschlossen.

mholti

Benutzer
Mitglied seit
26. Mrz 2014
Beiträge
66
Punkte für Reaktionen
0
Punkte
6
Hi,
ich hatte unter DSM 5.x in der WebStation einen vHost auf Port 444, der nach einem Client-Zertifikat verlangte.
Unter 6.0 habe ich die Config für den Vhost unter /usr/local/etc/httpd/sites-enabled/httpd-vhost.conf-user gefunden, aber ohne Client-Zert-Abfrage.
Also reinkonfiguriert und Box neugestartet. Folge httpd-vhost.conf-user ist wieder wie vorher (ohne meine Änderungen).
Frage: wo kann ich das ganze anpassen, dass es auch einen Reboot überlebt?

Gruß
M :confused:
 

mholti

Benutzer
Mitglied seit
26. Mrz 2014
Beiträge
66
Punkte für Reaktionen
0
Punkte
6
So,
einen Schritt weiter bin ich schon.
Nachdem ich mir den Update-Thread durchgelesen habe, weiß ich, dass ich unter dem o.a. Pfad eigene *.conf-Dateien anlegen kann, die nach einem Apache-Restart auch genutzt werden.
Mit einem Alias läuft das schon. Nur das Client-Zert bekomme ich noch nicht hin.

M
 

mholti

Benutzer
Mitglied seit
26. Mrz 2014
Beiträge
66
Punkte für Reaktionen
0
Punkte
6
Langsam wird das ein Solo-Thread... :D
Der Apache hatte gar kein SSL eingeschaltet. Stellt sich mir die Frage, wer denn da das SSL terminiert.
Und wenn ich dem Apache SSL "beibringe" und in der Konfig das Client-Zertifikat verlange, sagt er mir, dass er über http angesprochen wurde und daher nichts ausliefert.
Ich frage aber garantiert via https an.
Also stellt sich auch hier die Frage: wer terminiert SSL?

M
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.017
Punkte für Reaktionen
272
Punkte
393
Hallo,
alle Anfragen nimmt erst einmal der nginx Webserver entgegen.
Rich (BBCode):
root@DS1513:~# netstat -nlp|grep ngi
tcp        0      0 0.0.0.0:5000            0.0.0.0:*               LISTEN      11369/nginx: master
tcp        0      0 0.0.0.0:5001            0.0.0.0:*               LISTEN      11369/nginx: master
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      11369/nginx: master
tcp        0      0 0.0.0.0:443             0.0.0.0:*               LISTEN      11369/nginx: master
Ist Web-Station installiert läuft ein Apache auf Port 914
Rich (BBCode):
root@DS1513:~# netstat -nlp|grep http
tcp        0      0 127.0.0.1:914           0.0.0.0:*               LISTEN      12459/httpd
Damit etwas an den Apachen weitergeleitet wird muß man in der Web-Station einen portbasierten virtuellen Host anlegen und gibt die Ports für http und https vor. Dieses landet in /var/tmp/nginx/app.d/server.webstation-vhost.conf mit dem Inhalt
Rich (BBCode):
server {

    listen      88 default_server;
    listen      [::]:88 default_server;

    listen      448 ssl default_server;
    listen      [::]:448 ssl default_server;

    server_name _;

    ssl_certificate             /usr/local/etc/certificate/WebStation/vhost_5ec4185a-f34f-4686-9430-fc2127cce298/fullchain.pem;
    ssl_certificate_key         /usr/local/etc/certificate/WebStation/vhost_5ec4185a-f34f-4686-9430-fc2127cce298/privkey.pem;
    ssl_protocols               TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers                 ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA25
6:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AE
S256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES2
56-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH
-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA;
    ssl_prefer_server_ciphers   on;

    include     proxy.conf;
    location / {
        proxy_pass  http://127.0.0.1:914;
    }

}
in diesem Fall werden Port 88/448 über Port 914 an den Apachen übergeben.
Rich (BBCode):
root@DS1513:~# netstat -nlp|grep ngi
tcp        0      0 0.0.0.0:5000            0.0.0.0:*               LISTEN      11369/nginx: master
tcp        0      0 0.0.0.0:5001            0.0.0.0:*               LISTEN      11369/nginx: master
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      11369/nginx: master
tcp        0      0 0.0.0.0:88              0.0.0.0:*               LISTEN      11369/nginx: master
tcp        0      0 0.0.0.0:443             0.0.0.0:*               LISTEN      11369/nginx: master
tcp        0      0 0.0.0.0:448             0.0.0.0:*               LISTEN      11369/nginx: master

Gruß Götz
 

mholti

Benutzer
Mitglied seit
26. Mrz 2014
Beiträge
66
Punkte für Reaktionen
0
Punkte
6
Hallo Götz,
danke für die Info. Um das ganze nicht zu einfach zu machen, legt die Web-Station ja auch eine Config für den Apachen an. Nur scheint die ja dann nicht zu ziehen. Zwei Server auf dem selben Port geht ja wohl schlecht...
Jetzt versuche ich mal, den nginx dazwischen raus zu bekommen. Ich nutze das Ganze für ActiveSync. Und da scheint er einiges kaputt zu machen.
Sync klappt prinzipiell, aber:
* Push geht nicht
* Beim manuellen Aktualisieren wird jedesmal komplett neu gesynct.
Doof!!!

Gruß
Michael
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.017
Punkte für Reaktionen
272
Punkte
393
Hallo,
die Config des Apachen sollte schon gehen wenn Du die Ports des virtuellen Hosts benutzt, nginx arbeitet dann als proxy und leitet an den Apachen weiter.

Gruß Götz
 

mholti

Benutzer
Mitglied seit
26. Mrz 2014
Beiträge
66
Punkte für Reaktionen
0
Punkte
6
Hallo Götz,
im Prinzip ja, aber...
1) wird der Apache generell vom nginx via http angesprochen, da geht das mit dem Client-Zert nicht
2) scheint mir der nginx hier Active-Sync-Sessions zu stören, jedenfalls lief das mit "Apache-Only" unter DSM 5 wesentlich sauberer

Aber ich bin (auch dank Deines Tips)
auf dem Web, melde mich, wenn ich' s sauber am Laufen habe.

Gruß
Michael
 

mholti

Benutzer
Mitglied seit
26. Mrz 2014
Beiträge
66
Punkte für Reaktionen
0
Punkte
6
Heureka,
ich hab's!
1) virtuellen Host für Port 444 aus der Web-Station-Config (Web-Frontend) gelöscht
2) komplette Config für Port 444 unter Apache in /usr/local/etc/httpd/sites-enabled/ als eigene Datei erstellt.
3) Wichtig hier die Zeile: Listen <IP der Syno>:444 (sonst lauscht der Apache nur unter 127.0.0.1)
4) Zertifikate aus der Conf-Datei an die angegebenen Pfade kopiert
5) Apache restarted
==> Abfrage geht direkt auf den Apachen via https und das Client-Zert wird abgefragt

Gruß
M
 
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