weclappOn über https (SSL/TLS) verwenden

Ertan Oezdil
Erstellt am: 09.01.17 - KW 2 - Letzte Änderung am: 09.01.17 - KW 2
 

Der weclappOn Docker-Container stellt kein SSL/TLS bereit, es ist immer nur Port 8080 ohne TLS verfügbar. Natürlich sollte für den produktiven Betrieb immer https verwendet werden, vor allem wenn der Server aus dem Internet erreichbar sein soll. Der vorgesehene Weg dafür ist, dass ein Reverse Proxy davor gesetzt wird, der die TLS Verbindungen annimmt und dann per http an den weclappOn Server weiterleitet.

Für den Reverse Proxy gibt es verschieden Möglichkeiten, siehe z.B. hier.

Wir planen für diesen Zweck ein zusätzliches Docker Image bereitzustellen, das HAProxy mit entsprechender Konfiguration enthält. Um das dann zu verwenden wäre nur noch das SSL Zertifikat nötig. Bei Interesse daran bitte sales@weclapp.com kontaktieren. Die konkreten Voraussetzungen dafür wären:

  • Der Server auf dem Docker und weclappOn und dann auch HAProxy laufen sollte extern erreichbar sein mit einem öffentlichen Hostnamen, z.B. weclapp.meinefirma.de
  • Für diesen Hostnamen muss ein gültiges SSL Zertifikat vorhanden sein

Alternativ ist es möglich einen eigenen Reverse Proxy aufzusetzen oder einen bereits vorhandenen zu verwenden, der kann dann auch auf einem anderen Server laufen.

Hier ein paar Hinweise zur Konfiguration des Reverse Proxies:

  • Wenn https Requests durchgereicht werden, dann sollte der Header X-Forwarded-Proto auf "https" gesetzt werden: das ist wichtig, damit in Redirects, die von weclapp generiert werden, das korrekte Protokoll verwendet werden kann
  • Der Host Header des Requests sollte unverändert durchgereicht werden, dies ist ebenfalls wichtig für korrekte Redirects und ähnliches
  • Falls möglich sollten folgende Header aus dem Request entfernt werden (falls sie vom Client gesendet wurden) um zu vermeiden, dass der Client falsche Werte senden kann:
    • X-Forwarded-For
    • X-Forwarded-Host
    • X-Forwarded-Port
    • X-Forwarded-Proto (falls vom Client gesendet, wie oben beschrieben sollte dieser Header dann vom Reverse Proxy auf "https" gesetzt werden wenn es ein https Request ist)
  • Falls der Reverse Proxy auch http Requests annimmt, dann sollten diese idealerweise direkt zu https redirected werden (und nicht an den weclappOn Server weitergeleitet werden)
  • Nachdem alles eingerichtet ist, kann man unter Mein weclapp > Unternehmensdaten die "Standard URL" konfigurieren (die wird hauptsächlich für Links in Emails verwendet): einfach auf "Auf aktuelle Webadresse setzen" klicken (und dann speichern), darüber kann man auch prüfen ob die Reverse Proxy Konfiguration passt (da sollte dann der gleiche Host und das gleiche Protokoll sichtbar sein wie in der Adressleiste des Browsers)
 
 

weclapp GmbH · Frauenbergstraße 31-33 · 35039 Marburg