Reverse Proxy mit eigener Domain

  • Ab sofort steht euch hier im Forum die neue Add-on Verwaltung zur Verfügung – eine zentrale Plattform für alles rund um Erweiterungen und Add-ons für den DSM.

    Damit haben wir einen Ort, an dem Lösungen von Nutzern mit der Community geteilt werden können. Über die Team Funktion können Projekte auch gemeinsam gepflegt werden.

    Was die Add-on Verwaltung kann und wie es funktioniert findet Ihr hier

    Hier geht es zu den Add-ons

Status
Für weitere Antworten geschlossen.

Stock_Jn

Benutzer
Registriert
04. Okt. 2022
Beiträge
17
Reaktionspunkte
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
 
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?
 
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?
 
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
 
Einfach installieren und nichts einstellen oder was ist hier die Idee? Habe ich gerade schnell gemacht und keinen unterschied feststellen können
 
@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.
 
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
 
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?
 
@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
@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
 
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:
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
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:
Status
Für weitere Antworten geschlossen.
 

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