NEWS
Nginx Reverseproxy iobroker App sockets und vis
-
Hallo zusammen
Habe ein Problem
Ich betreibe das vis hinter einen reverseproxy. Die IPs aus meinem Lokalen Netz sind freigeschaltet. Bei Zugriff von aussen habe ich basic auth gemacht. In der iobroker App hatte ich dann den usernamen und passwort mit der URL mitgegeben: username:passwort@meinedomain.com. Das hat bis jetzt auch alles funktioniert. Leider wurde das vis mit dem Wachstum immer langsamer. Ich habe jetzt im web Adpater "Reine Web-Sockets (iobroker.ws) verwenden" aktiviert. Das vis ist jetzt wieder super schnell.
Allerdings habe ich nun das Problem mit der Authentifizierung von aussen. Die iobroker App will das einfach nicht schlucken und ladet die Seite von extern nicht.Ich habe mich dann für super schlau gehalten, und hatte mir gedacht, so stellt auf Cleint-Zertifikat -Auth um und installierst die Zertifkate auf die Geräte - aber die App scheint keine Zertifikatsauthentifizierung zu untersützten.
meine nginx Config ist wie folgt:
map http_upgrade $connection_upgrade { default upgrade; '' close; } server { listen 80; listen [::]:80; server_name vis.meinedomain.com vis.meinedomain2.com; return 301 https://$server_name$request_uri; include snippets/error-page.conf; } server { listen 443 ssl http2; listen [::]:443 ssl http2; include snippets/error-page.conf; server_name vis.meinedomain.com vis.meinedomain2.com; rewrite_log on; ssl_certificate /etc/letsencrypt/live/meine-domain.com-0001/fullchain.pem; # managed by Certbot ssl_certificate_key /etc/letsencrypt/live/meine-domain.com-0001/privkey.pem; # managed by Certbot ssl_client_certificate /etc/CA/ca.crt; include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot access_log /var/log/nginx/broker.log; error_log /var/log/nginx/broker-error.log; ssl_verify_client optional; location /socket.io/ { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $host; proxy_buffering off; proxy_pass http://10.1.99.14:9082; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; } location ~* \.io { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_set_header X-NginX-Proxy false; proxy_pass http://10.1.99.14:9082; proxy_redirect off; access_log off; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; } location / { satisfy any; allow 10.1.99.0/24; allow 10.1.96.0/24; allow 10.2.91.0/24; allow 127.0.0.1; deny all; auth_basic "Administrator Area"; auth_basic_user_file /var/www/.htpasswd; client_max_body_size 2048M; proxy_buffering off; proxy_set_header Accept-Encoding ""; 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 $connection_upgrade; proxy_pass http://10.1.99.14:9082; proxy_read_timeout 90; } }
Jemand eine Idee?
Beim Aufruf z.B. von Safari kommt auch immer mehrfach die Loginmaske.
Gruss Claudio