Synology-Forum.nl
Overige software => Web Station => Topic gestart 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>
-
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.
-
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
-
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!