Metainformationen zur Seite
Plugin-Daten
AutorGagi
Logo
StatusSTABLE
Version2.3
Min. LB Version1.4
Releasehttps://github.com/Gagi2k/LoxBerry-Plugin-WifiScanner/archive/v2.3.zip
BeschreibungScannt das Netzwerk nach Geräten und sendet den Status an den Miniserver. Zum Beispiel zur Anwesenheitserkennung.
SprachenEN, DE

Dies ist eine alte Version des Dokuments!


Loxone behind reverse proxy

Ein Reverse-Proxy ist ein Server, der vor Webservern sitzt und Anfragen von Clients (z. B. Webbrowsern) an diese Webserver weiterleitet. Reverse-Proxys werden gewöhnlich implementiert, um Sicherheit, Performance und Zuverlässigkeit zu erhöhen. Der Gen1 Miniserver kann keine verschlüsselten Verbindungen aufbauen, ein Reverse Proxy kann dabei behilflich sein.

Prerequisites

Installation

  • Wir starten mit der Installation des Docker Plugins -> https://wiki.loxberry.de/plugins/docker/start

  • Nach der Installation des Plugins das Webinterface von Portainer öffnen -> LoxberryIP:9443

  • Environment auswählen und einen neuen Stack erstellen (Stacks -> Add stack)

  • Name: Swag

  • Im web editor folgenden Code anpassen und einfügen

version: "2.1"
services:
  swag:
    image: lscr.io/linuxserver/swag
    container_name: swag
    cap_add:
      - NET_ADMIN
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/Rome
      - URL=<eure_subdomain>.duckdns.org
      - SUBDOMAINS=wildcard
      - VALIDATION=duckdns
      - DUCKDNSTOKEN=<euer_duckdns_token>
      - DOCKER_MODS=linuxserver/mods:swag-dbip
    volumes:
      - /var/lib/docker/volumes/swag/_data:/config #Folder welcher an den container übergeben wird.
    ports:
      - 4431:443 #Der Loxberry Port 4431 wird an den Docker auf dem Port 443 gemapped
      #- 80:80 #optional
    restart: unless-stopped
  • Stack deployen (somit wäre der Reverse proxy eingerichtet)

  • Port forwarding auf euren Router einrichten. 0.0.0.0:443 -> loxberryIP:4431

  • Jetzt müssen wir noch Loxone konfigurieren. Verbindet euch via SSH (ssh loxberry@iploxberry) auf loxberry und gebt euch root Rechte via (su -)

  • Geht in den Ordner /var/lib/docker/volumes/swag/_data/nginx/proxy-confs und erstellt die Konfigurationsdatei loxone.subdomain.conf:

#SSL configuration
server {
  listen 443 ssl;
  server_name loxone.*;

  include /config/nginx/ssl.conf;

  client_max_body_size 0;

  # Improve HTTPS performance with session resumption
  ssl_session_cache shared:SSL:10m;

  # Disable SSLv3
  ssl_protocols TLSv1 TLSv1.1;

  # Enable HSTS (https://developer.mozilla.org/en-US/docs/Security/HTTP_Strict_Transport_Security)
  add_header Strict-Transport-Security "max-age=63072000; includeSubdomains";

  resolver 8.8.8.8 8.8.4.4 valid=300s;
  resolver_timeout 5s;

  location / {
    proxy_pass <loxone server ip>:80;
    proxy_set_header Host $host;
    proxy_redirect http:// https://;
    proxy_http_version 1.1;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Upgrade $http_upgrade;
  }
}
  • Startet den Container neu

  • Testet die Konfiguration via mit einem Webbrowser von extern via https://loxone.eure_subdomain.duckdns.org

  • Sobald alles läuft könnt ihr euch um das hardening kümmern, z.B. Geoblocking -> https://virtualize.link/secure/

  • In der App und Loxone Config könnt ihr jetzt die Remote Adresse ersetzen in loxone.eure_subdomain.duckdns.org:443

Jetzt habt ihr Zugriff via SSH auf eure Loxone Instanz. Ihr könnt nun auch weitere Dienste in den Reverse Proxy hinterlegen. Im Ordner /var/lib/docker/volumes/swag/_data/nginx/proxy-confs findet ihr einige Beispielkonfigurationen.

Ich hoffe ich hab nichts vergessen... :)