Reverse Proxy mit eigener Domain

Stock_Jn

Benutzer
Mitglied seit
04. Okt 2022
Beiträge
17
Punkte für Reaktionen
2
Punkte
53
Guten Abend,
ich habe folgendes Setup laufen:
- eigene Domain per freeDNS in den Synology Einstellungen eingebunden (external Access - DDNS)
- Domain selbst sowie alle erstellten Subdomains zeigen auf meine IP Addresse per A-Record
- DSM Ports sind auf Router Port 443 und 80 (http aktuell nur zu testzwecken) freigegeben

Nun möchte ich die verschiedenen subdomains nutzen um auf verschiedene Dienste zu zeigen die alle im LAN problemlos über ihr IP oder IP + Port erreichbar sind.

Ich hab versucht dies über den internen Reverse Proxy Manager von Synology zu steuern (Control Panel - Login Porta - Advanced - Reverse Proxy) und auch über den Nginx Proxy Manager welcher per Docker installiert ist und erhalte bei beiden Methoden das selbe Ergebnis, durch alle Subdomains und Einstellungen in den Reverse PRoxy Managern erreiche ich immer nur DSM.

Wenn ich alles richtig verstanden habe sollte die (Sub-)Domain durch freeDNS auf meine IP zeigen, durch das Portforwarding landet man dadurch auf DSM, nun sollte DSM per Reverse Proxy von Subdomains dies im Netzwerk verteilen können oder wo ist hier der Denkfehler/Einrichtungsfehler?

Liebe Grüße
 

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
12.315
Punkte für Reaktionen
2.870
Punkte
423
Der Reverse Proxy arbeitet namensbasiert. Du brauchst also
a) einen (D)DNS-Server, der all diese Namen auf deine externe IP auflöst (nslookup)
b) für https ein oder mehrere Zertifikate, die für all diese Namen gelten
Erklärt das deine Frage?
 

Stock_Jn

Benutzer
Mitglied seit
04. Okt 2022
Beiträge
17
Punkte für Reaktionen
2
Punkte
53
Wie bereits beschrieben nutze ich den integrierten Synology DDNS Server und all meine Subdomains zeigen bereits auf meine public (external) IP Adresse (sonst wäre DSM ja auch nicht über diese Subdomains erreichbar). Diese habe ich auch zusätzlich nochmal per nslookup überprüft.
Ein Zertifikat habe ich per Wildcard Zertifikat erstellt und in den Synology Zertifikaten eingebunden und entsprechend allen Anwendungen und Reverse Proxy Regeln zugewiesen, somit glaube ich nicht dass dies der Grund is warum die Subdomains auf eine andere Anwendung als erwartet im Netzwerk zeigen?
 

plang.pl

Benutzer
Contributor
Sehr erfahren
Maintainer
Mitglied seit
28. Okt 2020
Beiträge
14.180
Punkte für Reaktionen
4.915
Punkte
519
Installier mal die Webstation testweise. Ansonsten passiert es bei mir auch immer wieder, dass der Aufruf einer Subdomain zum DSM führt, weil DSM weiterleitet. Wenn die Webstation installiert ist, passiert das nicht mehr
 

Stock_Jn

Benutzer
Mitglied seit
04. Okt 2022
Beiträge
17
Punkte für Reaktionen
2
Punkte
53
Einfach installieren und nichts einstellen oder was ist hier die Idee? Habe ich gerade schnell gemacht und keinen unterschied feststellen können
 

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
12.315
Punkte für Reaktionen
2.870
Punkte
423
@Stock_Jn
Na dann passt ja alles. synology.me ist m.E. eine gute Wahl, da es sowohl Wildcard-DNS als auch Wildcard-Zertifikate unterstützt - auch wenn die Namen nicht sonderlich "schön" sind.
Jetzt musst du eigentlich nur noch die Namen über das Anmeldeportal oder den Reverse-Proxy mit den richtigen Diensten verpointern und das entsprechende Zertifikat zuweisen - fertig. Wo hängst du denn?

@plang.pl hat Recht, installier mal die Webstation, der DSM neigt dazu, Anfragen über 80/443 an 5000/5001 weiterzuleiten, wenn keine Webstation installiert ist.
 

Stock_Jn

Benutzer
Mitglied seit
04. Okt 2022
Beiträge
17
Punkte für Reaktionen
2
Punkte
53
Wo ich hänge frag ich mich auch 😁

Subdomains sind eingetragen und zeigen auf meine public/external IP, Reverse Proxy Regeln sind erstellt (Beispiel siehe unten) und trotzdem werden die Regelen "nicht beachtet" und im Browser landet man immer auf DSM selbst und nicht auf den Diensten die in den Regeln angegeben sind



Im Browser lande ich innerhalb meines LANs wenn ich "111.111.1.11:1111" eingebe auf meinem gewünschten Dienst, die Eingabe von "test.example.de" schickt mich jedoch auf DSM
1673198451345.png
 

plang.pl

Benutzer
Contributor
Sehr erfahren
Maintainer
Mitglied seit
28. Okt 2020
Beiträge
14.180
Punkte für Reaktionen
4.915
Punkte
519
Dann lösch mal den Browser Cache oder nutze einen anderen Browser.
Wenn du die Subdomain aufrufst, landest du wahrscheinlich auf dem Port für DSM, also 5000/5001, oder?
Wenn das der Fall ist, mach noch mal manuell die Portangabe dahinter weg und ENTER drücken

Webstation installiert?
 

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
12.315
Punkte für Reaktionen
2.870
Punkte
423
@Stock_Jn
Mach dir klar, was du da definiert hast: Wenn jemand über https://test.example.com (also über Port 443 reinkommt), dann leite ihn weiter auf http://111.111.1.11:111". Wenn du aber nur test.example.com im Browser tippst, dann kommst du über http, Port 80 rein und die Regel zieht nicht und du landest auf dem DSM wenn du keine Webstation installiert hast.

Außerdem ist es etwas problematisch https auf http umzuleiten, da dieser ja http ausliefert und nicht https. Da bedarf es oft noch einer Rewrite-Rule unter Nginx
 
Zuletzt bearbeitet:
  • Like
Reaktionen: plang.pl

Stock_Jn

Benutzer
Mitglied seit
04. Okt 2022
Beiträge
17
Punkte für Reaktionen
2
Punkte
53
@plang.pl Webstation ist installiert aber ohne weitere Einstellungen dort getätigt zu haben.
Ich habe bereits verschiedene Browser und Geräte getestet, auch von externen Netzen außerhalb des LANs, bei allen das gleiche Ergebnis

@Benares tut mir leid für meine unklare Aussage, ich meinte natürlich "https://test.example.de"
ich habe auch schon versucht eine weitere Regel für http einzurichten erhalte hier jedoch das selbe Ergebnis und lange auf DSM
 

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.137
Punkte für Reaktionen
898
Punkte
424
Ein proxy ist keine Weiterleitung. Jede Seite spricht nur mit dem proxy. Mischung von http/https pro Seite ist also kein Problem.

Das Ziel wird normal bevorzugt als 'localhost' eingetragen, wenn es auf der NAS selber liegt.

Ob die Web Station installiert ist oder nicht ist egal. Sobald ein Host definiert ist bekommt dieser Vorrang eingeräumt als Ziel vor der DSM Umleitung.

Wo ich denke, dass allerdings das Problem liegt, wie @Benares schon angemerkt hat
Der Proxy lauscht auf https://Name (Port 443) aber nicht auf 'name' (Port 80).
Also entweder korrekt aufrufen (und auch nur 443 öffnen), oder einen zweiten Proxy einrichten.

Edit:

Von intern/extern mit verschiedenen Browsern überall die Umleitung auf DSM... Kann eigentlich nicht sein, wenn nicht irgendwo ein dicker Bock versteckt ist.

Bsp Portweiterleitung 443 > 5001 anstatt korrekterweise 443 > 443?
Oder ist 'example.com' irgendwo im DSM noch als Hostname gesetzt?
 
Zuletzt bearbeitet:

Stock_Jn

Benutzer
Mitglied seit
04. Okt 2022
Beiträge
17
Punkte für Reaktionen
2
Punkte
53
ich habe das Problem gefunden, die Ports die im Router freigegeben sind haben auf meine DSM Ports gezeigt. Ich habe diese nun von Router:443 zu NAS:443 und Router:80 zu NAS:80 eingestellt und dies scheint zu funktionieren.
Danke allen für die Hilfe!
 
  • Like
Reaktionen: Benares

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
12.315
Punkte für Reaktionen
2.870
Punkte
423
Ziel sollte es ja sein, nur 80 und 443 weiterzuleiten und 80 auf 443 umzuleiten, so dass man, egal ob 80 oder 443, immer auf https landet (y)
Wer denkt schon daran, beim Zugriff immer das "https://" davor zu schreiben.

Edit:
Aber dazu bedarf es m.W. Redirects wie z.B. www-redirect.conf unter /etc/nginx/sites-enabled mit z.B. folgendem Inhalt
Code:
server {
        listen 80;
        server_name www.example.com;

        return 301 https://$host$request_uri;
}
 
Zuletzt bearbeitet:


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat