Verschiedene Web Apps über DNS-Alias

Status
Für weitere Antworten geschlossen.

SonnyRasca

Benutzer
Mitglied seit
02. Nov 2012
Beiträge
18
Punkte für Reaktionen
0
Punkte
1
Guten Tag,

Ich habe mir auf meiner Synology verschiedene Webapplikationen, die ich über meinen ssl zertifizierten https dns alias aufrufen möchte. Irgendwie muss ich doch in den Webserver Settings angeben können, dass ich entsprechend weitergeleitet werde:

https://meinealias.com/webapp1 auf internen SSL Port 1 weiterleiten
https://meinealias.com/webapp2 auf internen SSL Port 2 weiterleiten
https://meinealias.com/webapp3 auf internen SSL Port 3 weiterleiten

Ich kenne mich netzwerktechnisch leider nicht sonderlich gut aus und ich weiss nicht mal wie diese Einstellungen genannt werden, sodass auch meine bisherige Google Suchen zum entsprechenden Thema nicht wirklich zielführend waren.
Wie kann ich das Einrichten, bzw. kann mir jemand ein paar Stichworte dazu geben, damit ich mich schlau machen kann?

Vielen Dank im Voraus,

LG
SonnyRasca
 

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.135
Punkte für Reaktionen
898
Punkte
424
Kannst du mehr Details zu "webapplikationen" mitteilen? Damit man das besser einschätzen kann was möglich ist.

Ansonsten ist appX.domain.de auf intern:<portX> der Systemsteuerung > Anwendungsportal > Reverse Proxy die erste Wahl
Für domain.de/alias sind erst mal nur die Syno-Webanwendungen vorgesehen unter Systemsteuerung > Anwendungsportal > Anwendungen
Dann gibt es die Methode von @ottosykora, im Router die Ports X an die DS weiterleiten und dann per domain.de:<portX> zugreifen
Dann gibt es noch die Web Station mit vHosts, wenn die Anwendungen alle unterhalb von /web liegen. vHost auf appX.domain.de mit doc-root auf /web/appX

Nur genau der Weg den du beschreibst (alias Pfad auf Port) gibt es meines Wissens so nicht in der DSM config.
 

SonnyRasca

Benutzer
Mitglied seit
02. Nov 2012
Beiträge
18
Punkte für Reaktionen
0
Punkte
1
Hallo zusammen

Danke für die Rückmeldungen.

Es geht um die folgenden Anwendeungen, welche auf meiner NAS installiert sind:
VideoStation
Sonarr
Sickbeard
Couchpotato
Sabnzbd

normalerweise gibt man nach der url Doppelpunkt und die Portnummer
Aktuell habe ich das auch bereits so konfiguriert. Ich habe verschiedene dyn dns aliase, welche ich im Router an die entsprechenden internen Ports (http) weiterleite. Da ich nun aber das Ganze mit https, bzw. mit einem zertifizierten https alias zum Laufen bringen möchte, stosse ich als Laie an folgende Grenzen, bzw. ich bringe es nicht zum Laufen.

Ich habe meinen zertifizierten https alias eingerichtet und auf dem router den port 443 auf den entsprechenden dsm ssl port weitergeleitet:
syno1.PNG

Beispiel
In Sonarr habe ich nun SSL aktiviert und den Port definiert:
syno2.jpg

url:8990 funktioniert nun aber nicht und auf den http port url:8989 komme ich zwar drauf nur wird das ssl zertifikat nicht erkannt:
syno3.PNG
syno4.PNG


VG
SonnyRasca
 
Zuletzt bearbeitet:

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.135
Punkte für Reaktionen
898
Punkte
424
Erst mal gibt es keine SSL und nicht SSL Ports.
Der Dienst hinter einem Port arbeitet eben ohne/mit SSL.

Dann ist wichtig auf welchem Webserver die entsprechende Anwendung läuft bzw. derjenige Webserver, der die Anfrage an appX.domain.de zuerst entgegen nimmt.
Dieser muss auch die Zertifikate händeln.
Je nachdem ob Webanwendungen ihren eigenen Server mitbringen muss man es anders lösen.

Portumleitungen ala 443 > 5001 hasse ich wie die Pest, weil sie meist nur Probleme bereiten bzw. die Fehlersuche erschweren. Das bezieht sich allerdings nur auf 443, bei anderen Ports ist dies nicht so "verwirrend".

Es hängt jetzt davon ab, welche Möglichkeiten du extern hast beim Hoster/dynDNS Provider.
Kannst du mehrere Subdomains oder dynDNS ala appX.domain.de, appY.domain.de einrichten?
Oder kannst du eine dynDNS ala dyn.domain.de einrichten und weitere Subdomains die per CNAME DNS EIntrag auf dyn.domain.de verweisen?
Wenn ja, dann brauchst du von außen nur noch 443 > 443.
Die Unterscheidung der Dienste läuft dann über Subdomains die du auf der DS mit dem Reverse Proxy auf die entsprechenden Dienste umleiten kannst.
Zudem kannst du dann komfortabel die Lets Encrypt Zertifikatsverwaltung der DS benutzen.

Anmerkung
domain:8890 > du musst zwingend https://domain:8890 angeben, sonst versucht er unverschlüsselt auf den Port 8890 zuzugreifen, und das kann nur fehlschlagen.
Noch mal Ports haben nichts mit "mit/ohne SSL" zu tun, ausschlaggebend ist hier http (oder keine Angabe), oder https .
Im Standard entspricht http dem Port 80 und https dem Port 443. Will man mit einem dieser Protokolle einen anderen Port benutzen ist das Protokoll UND der Port anzugeben in der URL
 

SonnyRasca

Benutzer
Mitglied seit
02. Nov 2012
Beiträge
18
Punkte für Reaktionen
0
Punkte
1
Es hängt jetzt davon ab, welche Möglichkeiten du extern hast beim Hoster/dynDNS Provider.
Kannst du mehrere Subdomains oder dynDNS ala appX.domain.de, appY.domain.de einrichten?
Ja, ich kann bei dynDNS mehrere Subdomains ala appX.domain.de, appY.domain.de einrichten.
Ich verstehe aber nicht wie ich alle meine verschiedenen Subdomains Anfragen (extern auf Port 443) auf die unterschiedlichen internen Ports routen kann...

Oder kannst du eine dynDNS ala dyn.domain.de einrichten und weitere Subdomains die per CNAME DNS EIntrag auf dyn.domain.de verweisen?
Wenn ja, dann brauchst du von außen nur noch 443 > 443.
Das verstehe ich jetzt nicht, bzw. weiss nicht ob ich das kann... :confused:

domain:8890 > du musst zwingend https://domain:8890 angeben, sonst versucht er unverschlüsselt auf den Port 8890 zuzugreifen, und das kann nur fehlschlagen.
Ja, habe ich so gemacht, kommt die gleiche Meldung

Zudem kannst du dann komfortabel die Lets Encrypt Zertifikatsverwaltung der DS benutzen.
Habe ich bereits entsprechend eingerichtet
 

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.135
Punkte für Reaktionen
898
Punkte
424
Bezüglich sonarr weiß ich nicht wie der vorgeht, vielleicht ist auch nur deine config falsch.
Vielleicht nutzt er mit Enable SSL einfach den oberen Port 8989 mit SSL und deshalb ist auf 8890 nichts.
Und vielleicht ohne "Enable SSL" mit Angabe von je einem Port auf dem einem mit SSL und auf dem anderen ohne.
Da wäre auch interessant was das Ausrufezeichen (mouse-over) sagt und die sonarr Doku.

Bezüglich den Domains. (ja, da muss man sich schlau lesen über die Zeit, das geht nicht in 2 Sekunden)
Welchen Provider/Hoster oder dynDNS Anbieter mit welchem Paket nutzt du z.B.?
Wie hast du die mehreren Subdomains denn aktuell in Betrieb? Welcher Client versorgt den Anbieter hier mit der aktuellen IP deines Routers?

Ob du es am Ende mit mehreren dynDNS Adressen die alle immer mit der aktuellen IP versorgt werden machst, oder ob du mehrere Subdomains hast die per CNAME im DNS auf EINE dynDNS Adresse verweisen ist am Ende Geschmackssache bzw. hängt von den Möglichkeiten bei deinem Anbieter ab. Persönlich bevorzuge ich die CNAME Lösung.
Am Ende stehen hier jedenfalls beide Male mehrere Domains ala appX.domain.de, appY.domain.de etc die alle auf deinen Anschluß verweisen und auf 80/443 anklingen, je nachdem ob ohne oder mit https in der URL.
Unter Systemsteuerung > Anwendungsportal > Reverse Proxy kannst du jetzt die diveren Domains anlegen,
z.B. appX.domain.de und als Ziel dann localhost:8989
Dann kommt von außen die Anfrage an https://appX.domain.de an den Syno Webserver (dieser sollte dann auch ein LE Zertifikat für appX.domain.de haben. !Wichtig! bei den Zertifikaten muss unter dem Knopf "Konfigurieren" der richtige Dienst zugeordnet werden, sonst wird das Standard Zertifikat ausgeliefert) mit verschlüsselter Verbindung. Dieser reicht dann die Anfrage local auf der DS unverschlüsselt (ist nicht besonders kritisch, da der Verkehr die DS nicht mehr verlässt) weiter an den Dienst der an Port 8989 lauscht.
Gleiches Schema für andere Anwendungen die auf anderen Ports lauschen.
Für die Syno-Anwendungen kannst du direkt unter Systemsteuerung > Anwendungsportal > Anwendungen benutzerdefinierte Domains eintragen, z.B. video.domain.de, ohne Ports und Reverse Proxy.
Der Verkehr der auf Port 443 dann reinkommt wird dann auf der DS sortiert anhand der angefragten Domain Namen (SNI, Server Name Indication) und an die Reverse Proxy oder benutzerdefinierten Domains übergeben bzw. die Dienste die dort als Ziel eingetragen sind.
 

SonnyRasca

Benutzer
Mitglied seit
02. Nov 2012
Beiträge
18
Punkte für Reaktionen
0
Punkte
1
Hallo Fusion

Zunächst mal vielen lieben Dank, dass du dir die Zeit und Geduld nimmst um mir zu helfen/erklären. Weiss ich sehr zu schätzen.

Vielleicht nutzt er mit Enable SSL einfach den oberen Port 8989 mit SSL und deshalb ist auf 8890 nichts.
Und vielleicht ohne "Enable SSL" mit Angabe von je einem Port auf dem einem mit SSL und auf dem anderen ohne.
Ich komme nur mit http://.....:8989 darauf. Dabei wird die Webseite, bzw die Verbindung entsprechend als unsicher klassifiziert

syno5.png

Welchen Provider/Hoster oder dynDNS Anbieter mit welchem Paket nutzt du z.B.?
Wie hast du die mehreren Subdomains denn aktuell in Betrieb? Welcher Client versorgt den Anbieter hier mit der aktuellen IP deines Routers?
Ich habe bei dyn.com einen DynDNS Pro Service. In der Regel richte ich meine Host(names) als "Host" ein. Sowohl auf meinem Router als auch auf dem NAS habe ich die Aktualisierung der IP bei DynDNS. Kann die Doppelspurigkeit problematisch sein, bzw. ist das unsinnig?
Was aber auf der Synology ein bisschen komisch ist, oder ich einfach nicht verstehe, ist, dass ich nur einen Hostname pro Anbieter zum Aktualisieren einrichten kann. Wie kann ich sicherstellen, dass alle meine Hosts aber bei einem IP-Wechsel auch entsprechend aktualisiert werden. Schliesslich möchte ich ja im Endeffekt alle meine LE zertifizierten Hostnames entsprechend aktualisiert halten
syno6.jpg
Wie gesagt meine Hostnames laufen normalerweise als Host (Teamspeak, Zugang zum DSM). Für die anderen Web-Interfaces habe ich Hostnames, welche als WebHop auf meine externe IP und den entsprechenden Ports weiterleitet. Das ist natürlich extrem unschön und ich muss diese auch manuell aktualisieren. Das ist halt eben auch der Punkt, den ich aufgrund meines Unwissens, nicht auf die Reihe kriege, bzw. wie ich die den Verkehr auf Port 80/443 auf der Synology - idealerweise über den auf dem NAS mit LE zertifizierten hostname - auf die entsprechend intern sortiert und routet.
EDIT: Habe soeben gesehen, dass dies mit 3rd Party Package DDNSupdater 2 gehen soll :p

Ich werde das nun mit dem Reverse Proxy wie von dir beschrieben versuchen:
Unter Systemsteuerung > Anwendungsportal > Reverse Proxy kannst du jetzt die diveren Domains anlegen,
z.B. appX.domain.de und als Ziel dann localhost:8989
Das bedeutet also, dass ich meine Hostnames (als Host service nicht WebHop) einrichte, welche auf meine externe IP kommen, bzw auf Port 80/443 anklopfen und entsprechend den Einträgen im Reverse Proxy auf die entsprechenden internen Ports weitergeleitet werden. Kann ich im Reverse Proxy für beide http & https Protokolle jeweils einen Eintrag mache, sodass ich je nach Aufruf http oder https auch an den korrekten internen Port geroutet werde?


Dann kommt von außen die Anfrage an https://appX.domain.de an den Syno Webserver (dieser sollte dann auch ein LE Zertifikat für appX.domain.de haben. !Wichtig! bei den Zertifikaten muss unter dem Knopf "Konfigurieren" der richtige Dienst zugeordnet werden, sonst wird das Standard Zertifikat ausgeliefert) mit verschlüsselter Verbindung. Dieser reicht dann die Anfrage local auf der DS unverschlüsselt (ist nicht besonders kritisch, da der Verkehr die DS nicht mehr verlässt) weiter an den Dienst der an Port 8989 lauscht.

Die LE Zertifikat Konfiguration sieht bei mir so aus:
syno7.PNG
 
Zuletzt bearbeitet:

Dufooy

Benutzer
Mitglied seit
03. Nov 2012
Beiträge
277
Punkte für Reaktionen
0
Punkte
16
Was für einen dynDSN Service nutzt Du?
Rein interessehalber....mot oder ohne eigenen Domain?
 

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.135
Punkte für Reaktionen
898
Punkte
424
ok, die Warnung heißt einfach stink normale Verbindung ohne Verschlüsselung, http.

Bezüglich dyn.
Ja, Syno kann nur ein Host pro Anbieter, ddns updater 2 kann auch mehrere. Das wäre ein weiterer Unterschied, wenn man Subdomains per CNAME verkoppelt, dann braucht man nur eine dyn Adresse.
Update pro Host würde ich nur von einem Gerät aus machen, Syno oder Router. das ist völlig ausreichend. Doppelt gemoppelt kann, muss aber nicht zu Problemen führen.

Bei Reverse Proxy kannst du auswählen ob er auf http oder https lauschen soll, beides geht nicht.
Dafür kannst du zwei Proxies anlegen, wenn du das willst, einer für http, einer für https
Die Verbindung endet hier am Proxy, auch die SSL Verbindung. Deshalb ist auch das LE Zertifikat verwendbar per Konfiguration in der Systemsteuerung.
Dann kannst du entscheiden, ob die Verbindung zwischen Proxy und internem Dienst per http oder https laufen soll. Also als internen Hostnamen entweder http://localhost:8989 oder https://localhost:8890.


Wenn du die Ansicht des Zertifikats aufklappst auf der rechten Seite, dann siehst du auch welche Domains teil des Zertifikats sind und für welche Dienste es verwendet wird.
Du musst dir dann eben noch welche für appX.domain.de etc holen und diese dann den einzelnen Diensten (Proxies) zuweisen.
 

SonnyRasca

Benutzer
Mitglied seit
02. Nov 2012
Beiträge
18
Punkte für Reaktionen
0
Punkte
1
Reverse Proxy habe ich für die http Anfragen erfolgreich eingerichtet. Funktioniert soweit :eek:
Für https werde ich mir am Abend mal von zu Hause vornehmen, muss ohnehin zunächst die Router Portweiterleitung 443>5001 deaktivieren, sonst lande ich immer auf dem DSM UI. Für den Moment werde ich wohl den Host Update auf dem NAS mit dem DDNS Updater 2 konsolidieren, muss mich da aber noch ein wenig einlesen. Ebenso wie man Subdomains per CNAME verkoppelt, das kommt mir wesentlich eleganter vor. Kannst du evtl Quell-Material empfehlen?

Was ich aktuell mit den LE Zertifikate noch Mühe habe, bzw. nicht verstehe, wie ich die jeweiligen Zertifikat-Konfigurationen machen muss, damit diese auch alle funktionieren und korrekt eingestellt ist:
Standard Zertifikat ganz funktioniert, die anderen jedoch nicht...
syno8.PNG
 

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.135
Punkte für Reaktionen
898
Punkte
424
Sobald du einen Reverse Proxy definiert hast, der von extern auf https Anfragen lauscht, taucht dieser mit seinem Namen in der Liste der Dienste unter Konfigurieren bei den Zertifikaten auf.
Diesen Diensten kannst du dann wie für sonny-sab das für ihren Namen gültige Zertifikat zuweisen.
Solange du nur Reverse Proxy mit http Anfragen definiert hast taucht das hier nicht auf, weil es ja auch nichts mit Zertifikaten zu tun hat.

CNAME ist der Canonical Name
https://de.wikipedia.org/wiki/CNAME_Resource_Record
Damit lassen sich praktisch weitere sub.domain.de Hostnamen mit einem Hostnamen verbinden, der einen A/AAAA-record besitzt.
Damit zeigen dann sowohl der eigentlich Hostname wie auch alle CNAME Einträge auf ein und dieselbe IP (üblicherweise ist dieses dann der dynDNS).
Der CNAME wird in den DNS Einstellungen beim Domain-Verwalter vorgenommen,der die DNS Server für diese Domains betreibt.
Üblicherweise findet sich in den FAQ oder über Google "Anbieter CNAME" eine passende Hilfe.

z..B.
https://help.dyn.com/standard-dns/adding-a-resource-record-in-standard-dns/
(dyn.com verwendet hier irreführend den Begriff "Alias", aber ...)
 
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