Was wollen wir?
Wir wollen einen Reverse Proxy Server installieren.
Warum wollen wir das?
Wie die meisten Menschen habe ich nur eine IP-Adresse an meinem Internet Anschluss. Um eine Webseite nun selber hosten zu können und aus dem Internet erreichbar zu machen benötigt man eine Port Weiterleitung.
Was aber wenn wir nun mehrere unterschiedliche Webseiten Hosten möchten und alle sollen unter einem Port erreichbar sein?
Technik:
Die Lösung lautet Reverse Proxy
Der Client ruft über einen Domain Hoster eine von uns im Besitz befindliche Domain auf. Diese wird nun an unsere IP weiter geleitet und trifft immer als erstes über eine Port Weiterleitung auf unseren Reverse Proxy Server. Dieser schaut nun: über welche Domain wurde die Anfrage an uns geschickt und leitet diese Anfrage intern an unsere unterschiedlichen Server weiter.
Sicherheit:
Ein weiterer Vorteil: Ein potentieller Angreifer sieht immer nur unseren Reverse Proxy Server, er kennt weder die interne IP des Zieles noch die Ports die wir intern im Netzwerk für diesen Dienst verwenden. Nach außen hin ist er immer über Port 80 (unverschlüsselt) und Port 443 (SSL verschlüsselt) zu erreichen. Diese Technik kann man noch weiter absichern in dem wir Gäste die unsere Seiten unverschlüsselt unter Port 80 aufrufen sofort auf den verschlüsselten Port 443 umstellen.
Und wie genau geht das?
Was benötigen wir?
Öffentlich zugängliche IP, entweder über eine
– feste IP4
– dynamische IP4
– IPv6 Tunnel über eine Internet IP4 (siehe hierzu meinen Blog)
Domain Hoster
– entweder eine kostenlose subdomain
– über den dynamischen DNS Anbieter bereit gestellte Domain
– oder über eine kostenpflichtige eigene Domain. Es wird hier nur ein Domain benötigt, da man meist beliebig viele Subdomain hinzufügen kann. Diese werden dann zu der öffentlichen IP umgeleitet. Je nach verwendeter Technik mit einer Domain Umleitung, einem DynDNS Eintrag der oft mitgeliefert wird oder einem Typ A DNS Eintrag
Reverse Proxy Server
Auch hier gibt es unterschiedliche Möglichkeiten
– Proxmox oder Docker Container mit NGinx -> https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/
– Synology mit eigenen Board Mitteln
SSL Zertifikate
– kostenpflichtige (teure) eigene Zertifikate für seine Domain
– kostenlose Let‘s encrypt Zertifikate
Mein Setup:
Wie oben teilweise bereits sichtbar wurde gehe ich in dieser Anleitung auf folgendes Setup ein
– eine öffentliche IP4 mit IPv6 Tunnel auf meinen Server
– eine Domain bei meinem Hoster allinkl.com mit frei vergebenen Subdomain und TYP A Umleitung auf die öffentliche IP4
– meine Synology als Reverse Proxy Server
– SSL mit meiner Synology und automatischen Abgleich der let‘s encrypt Zertifikate zu meiner Subdomain
Wie ich mein Setup eingebunden bzw vorkonfiguriert habe erkläre ich teilweise in meinen anderen Blog Einträgen. Für alternative Lösungen versuche ich in der Regel auch Querverweise zu anderen Anleitungen beizusteuern, allerdings kenne ich auch nicht alle Möglichkeiten und Wege, deshalb ist dieses hier auch schon sehr speziell, aber vielleicht hakt es ja genau an der einen oder anderen Stelle die sich überschneidet oder inspiriert Euch zu weiteren Lösungsansätzen.
Subdomain erstellen:
Synology Setup Reverse Proxy:
… Todo …
Sorry: Bis ich hier fertig bin müssen diese Anleitungen helfen