Synology-Forum.nl

Overige software => Web Station => Topic gestart door: wopper op 31 juli 2016, 08:50:26

Titel: Apache/NGIX config files DSM 6.0.1
Bericht door: wopper op 31 juli 2016, 08:50:26
Hi

ik gebruik sinds DSM6.0 al geruime tijd de reverse proxy (onder toepassingsportaal) met LetEncrypt om wat interne servers naar buiten te ontsluiten.

Nu is een software pakket op een van de servers gebruik gaan maken van websockets, en die worden standaard niet doorgelaten door de DSM 6.0.1 reverse proxy.

Nu wil ik graag deze mod laden " a2enmod proxy_wstunnel" zou dat kunnen? En de WSS config in de virtuele host file zetten. Maar ik kan die virtuele host file nergens vinden in DSM 6.0.1, er zijn vrij veel tutorials over 5.x en 6.0 maar niets over 6.0.1.

<VirtualHost *:443>
   ServerName unifi.domain.com
   ServerAlias unifi.domain.com

   RewriteEngine On
   ProxyPreserveHost On
   ProxyRequests Off
   SSLEngine on
   SSLProxyEngine On
   SSLProxyVerify none
   SSLProxyCheckPeerCN off
   SSLProxyCheckPeerName off
   SSLProxyCheckPeerExpire off
   SSLProtocol -All +TLSv1 +TLSv1.1 +TLSv1.2
   SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH
   SSLHonorCipherOrder on
   SSLCertificateFile /config/keys/domain.com.crt
   SSLCertificateKeyFile /config/keys/public.domain.com.key
   SSLCertificateChainFile /config/keys/bundle.domain.com.crt

   ProxyPass /wss/ wss://10.10.10.12:8443/wss/
   ProxyPassReverse /wss/ wss://10.10.10.12:8443/wss/


   ProxyPass / https://10.10.10.12:8443/
   ProxyPassReverse / https://10.10.10.12:8443/
   

</VirtualHost>

<VirtualHost *:80>
   ServerName unifi.domain.com
   ServerAlias unifi.domain.com
   
   Redirect permanent / https://unifi.domain.com/


</VirtualHost>
Titel: Re: Apache/NGIX config files DSM 6.0.1
Bericht door: adejager op 13 augustus 2016, 22:21:04
Ik loop met unifi 5.2.2 tegen hetzelfde probleem aan.

blijkbaar gebruikt DSM 6.0.1 geen Apache meer maar NGINX.

Op volgende forum kwam ik de locatie van de conf files tegen:

https://forum.synology.com/enu/viewtopic.php?t=119672

ik heb deze geprobeerd aan te passen volgens volgende site:

http://nginx.org/en/docs/http/websocket.html

Maar kreeg dat niet werkend, was overigens ook vergeten om nginx te restarten (synoservicecfg --restart nginx)

na aanpassing kreeg in een melding dat DSM niet meer goed functioneerde blablabla...

Na een reboot was deze melding weg, net als mijn aanpassingen in server.ReverseProxy.conf

Ik ga het deze week nog eens proberen als ik wat tijd heb.
Titel: Re: Apache/NGIX config files DSM 6.0.1
Bericht door: adejager op 13 augustus 2016, 22:54:24
net toch nog even geprobeerd en het werkend gekregen.

volgende twee regels toegevoegd aan /etc/nginx/app.d/server.ReverseProxy.conf

    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";

het ziet er nu zo uit:

server {
    listen 80;
    listen [::]:80;

    server_name unifi.mydomain.com;

    location / {
        proxy_set_header        Host                $host;
        proxy_set_header        X-Real-IP           $remote_addr;
        proxy_set_header        X-Forwarded-For     $proxy_add_x_forwarded_for;
        proxy_set_header        X-Forwarded-Proto   $scheme;
        proxy_set_header        Upgrade             $http_upgrade;
        proxy_set_header        Connection          "upgrade";
        proxy_intercept_errors  on;
        proxy_http_version      1.1;

        proxy_pass https://192.168.x.x:8443;

    }
}

Dezelfde aanpassing heb ik bij de 443 entry gedaan.

Geen "synoservicecfg --restart nginx" of reboot van DSM, want dan ben je alles kwijt.

Niet vergeten om nginx -s reload te doen (dat was ik dus de vorige keer)

Daarna kon ik het dashboard weer opstarten


Titel: Re: Apache/NGIX config files DSM 6.0.1
Bericht door: sammyke007 op 07 april 2020, 10:57:01
Sorry voor dit oude topic aan te halen, maar het heeft mij deels geholpen zonet!

Domoticz gebruikt sinds stabiele versie 2020.1 "websockets".
Als je een reverse proxy gebruikt, dan worden je devices niet geupdate met de standaard instellingen. De oplossing van hierboven is wel juist, maar gaat elke keer verloren bij een reboot van je DSM.

Je kan beter:
DSM --> Configuratiescherm --> Toepassingsportaal --> Reverse Proxy

Aldaar je proxy aanduiden (die zou je al moeten hebben als je op deze post beland bent) en klikken op "bewerken".
Bij "Aangepaste koptekst" klik je op het pijltje naast "Maken". Hier kies je Websocket.
Bevestigen met OK en sluiten.

Dit voegt op de juiste manier de regels
proxy_set_header        Upgrade            $http_upgrade;
proxy_set_header        Connection            $connection_upgrade;
toe aan je nginx configuratiebestand!