Reverse Proxy von Synology

Ich nutze ja meine Synology DS415+ auch zur Synchronisierung meiner Kontakte. Dies geschieht mit dem eigenständigen Paket CardDAV und über benutzerdefinierte Ports. Ich hatte hierfür den Port 2030 auserkoren.
Die Synchronisation der Kontakte über Tablet, Handy als auch Thunderbird erfolgte immer völlig problemlos und ohne Komplikationen. Eigentlich ein idealer Zustand an dem es nichts zu Verbessern gäbe…
aber natürlich….nach ein paar Monaten hat es mich doch gewurmt warum hierfür ein extra Port geöffnet werden muß. Port 443 für SSL/TLS ist ja sowieso schon für die Homepage im Router geöffnet. Da liegt es doch nahe auf diesen zu setzen. An dieser Stelle kommt der relativ neue Reverse Proxy von Synology zum Einsatz. Er erlaubt eingehende Anfragen auf einem bestimmten Port an ein anderes Gerät oder interne Ports weiterzuleiten. Hierfür wird im oberen Bereiches des Bildes (Quelle) eine Subdomain in Form von beispielsweise “dav.domain.de” erstellt, und unten (Ziel) muß definiert werden was damit passieren soll.   

In meinem Falle werden also Anfragen an die Subdomain “dav.domain.de auf Port 443 nach “localhost” an Port 2030 weitergeleitet. Der Eintrag mit welchem die Clients dann gefüttert werden, lautet:
https://dav.domain.de/addressbooks/users/username/addressbook/“, wobei ihr “username” durch euren User auf der NAS ergänzen ersetzen müsst. Mit diesen und weiteren Maßnahmen wie z. B. auch vHost über Port 443, Kalender auf Port 443 und so weiter habe ich den ausufernden Port-Zoo auf ein mir verträgliches Maß reduzieren können. Ganz mit fremden Loorbeeren will ich mich aber auch nicht schmücken – ein Bekannter aus dem Forum von Synology hat mir hierbei die nötige Unterstützung gegeben. An dieser Stelle nochmal ein herzliches Dankeschön.    


Kommentare

Reverse Proxy von Synology — 13 Kommentare

  1. Und funktioniert deine Homepage noch Ordnungsgemäß? Ich sehe den Sinn nicht dahinter. Es gibt halt schon Gründe warum es 65000 Ports gibt, wenn man alles auf einen runter drückt bräuchte man Ports nicht.

    • Du meinst die Frage vermutlich ernst?!
      Wie in dem Artikel beschrieben gehts mir um die Reduzierung der offenen Ports und damit eine möglichst kleine
      Angriffsfläche zu bieten. Jeder zusätzliche Port ist ein Risiko (in Zusammenspiel mit dem dahinterliegenden Dienst).
      Und ich bin ein Fan davon möglichst viele Anwendungen auf einen Port zu binden.
      Und ja, die Homepage funktioniert natürlich auch.

      Viele Grüße Markus

    • Es ist fatal wenn man z.B. Webseiten über andere Ports als 80/443 laufen lässt. In vielen WLANs, Firmennetzwerken etc. werden außer bis auf ein paar wenige Ports alle geblockt. Lässt man also seine Webseite auf Port 33333 laufen führt das nur dazu das man von Extern seine Webseite im Zweifel nicht aufrufen kann.

  2. Hallo Markus, Danke für den Hinweis! Ich bin nicht so ganz Sattelfest in der Portweiterleitung aber vielleicht kannst Du mir hier einen detaillierten Tip geben: Ich verwende seit längerer Zeit eine Syno, die mit Zertifikat und DDNS aus dem INet erreichbar ist und CALDAV/CARDDAV bereitstellt. So wie Du das wohl auch machst. Problemlos.. Jetzt möchte ich eine 2. Syno (DS415+)für IOBroker im INet zur Verfügung stellen, um über eine Visualisierung SmartHome zu steuern. Bis gestern kannte ich Reverse Proxy nicht. Ich richte auf der 2. Syno (IOBroker) DDNS ein und brauche auch ein HTTPS-Zertifikat? Mir ist die Host-Definition Quelle/Ziel nicht so ganz klar. Was genau definiere ich dort? Vielen lieben Dank!

    • Hallo Ulli,

      Dein Beitrag ist erst mit Verzögerung freigeschaltet worden.
      Ich hatte, bzw. habe noch etwas privaten Stress.
      Der rProxy wird der internen IP der DS415+ angelegt.
      Die Angaben bei “Quelle” sollten selbterklärend sein.
      Je nachdem ob Du über Port 443 (SSL) oder Plain Port 80 von der WAN-Seite reinkommst.
      Und das Ziel soll die DS für IOBroker sein.

      Viele Grüße Markus

  3. Hallo Markus,

    so etwas ähnliches habe ich auf meiner Synology versucht, da kommt dann aber die Meldung, dass der Port reserviert sei und ich komme nicht weiter.
    Wollte damit die Beschränkungen von IPv4 und NAT umgehen (bei reinem IPv6 wäre das nicht notwendig, da NAT entfällt und jedes Gerät direkt von außen adressiert werden kann).
    Der Grund ist, dass ich einen zweiten Webserver (weiterer Computer) einrichten wollte, der HTTPS über Let‘s Encrypt unterstützen sollte.
    Werde jetzt dann also nur über IPv6 erreichbar sein…
    Viele Grüße,
    Einar

  4. Guten Tag
    Ich bin erst neu auf das Thema Proxy aufmerksam geworden und finde es sehr spanned.
    Verstehe ich das richtig, dass ich so mehrere Anwendungen auf den Port 443 setzen kann (subdomains) ?

    Mich hat das immer geärgert, dass ich immer diese komplette Domain eingeben muss auf dem Handy als Synchronisation.
    Also kann man das so ändern dass ich es nur mit der Domain machen kann?

    Kann ich beim Ziel auch statt Localhost “https://dav.domain.de/addressbooks/users/username/addressbook/“ eingeben?

    Und noch eine Andere frage, brauche ich dann trotzdem für die Subdomain ein eigenes Zertifikat oder reicht das Zertifikat der einen Domain?

    • Hallo und Danke für Deinen Kommentar.

      Wie oft gibts Du denn die Verbindungsdaten auf dem Handy ein? Ich mach das einmal und das bleibt drin.

      Subdomains haben erstmal wenig mit rProxy zu tun.
      Mit Subdomains kannst Du z. B. mehrere Dienste einer Domain trennen.
      caldav.domain.de, carddav.domain.de, filestation.domain.de…

      Und mit dem Reverse Proxy kannst Du beispielsweise von der WAN-Seite eingehende Anfragen bestimmten Diensten oder anderen Geräten zuweisen.
      Um bei den oben genannten Subdomains zu bleiben: Die eingehende Anfrage an die Subomain https://caldav.domain.de werden an die interne IP der Synology an Port 38008 (Kalender Plaintext) geleitet. Da die einkommende Anfrage ja bereits HTTPS,- somit über Port 443 läuft muß kein weiterer Port für Kalender im Router weitergeleitet werden.
      Anderes Beispiel: Du hast im LAN noch einen Webserver laufen mit der fiktiven IP 10.1.1.10. Diesen willst jetzt auch über HTTPS zugänglich machen. Geht erstmal nicht, da 443 bereits an die Synology geht. Auch das kannst Du mit einem rProxy-Eintrag lösen. https://AndereDomain geht per rProxy an die interne IP 10.1.1.10.

      Ich hoffe ich konnte Deine Fragen beantworten.

      Viele Grüße Markus

      • Vielen Dank für die Schnelle Antwort.

        Ich bin halt nicht der einzige der den Dienst nutzt und einige Leute haben da vielleicht weniger Ahnung von.
        Da dachte ich wäre es mit einer kürzeren Subdomain einfach einfacher.

        Also heisst es, dass das Proxy dafür sorgt dass man mehrere Dinge auf einen Port legt?

        Macht es denn in der Theorie einen Unterschied ob jetzt nur 443 oder auch noch 444 (beispiel) offen ist?

        Ich habe bei mir momentan auch bestimmt 10 Ports offen auf denen verschiedenen Dinge laufen.

        Grüsse
        Skyfay

        • Hallo,

          es ist ja nicht nur unbedingt der technische Aspekt der eine Rolle spielt.
          Manche bevorzugen halt lieber dienst.domain.de als domain.de/dienst.
          Und jeder offene Port stellt mit dem Dienst welcher dahinter steht ein gewisses Risiko dar.
          VPN ist derzeit einer der sichersten Möglichkeiten um ein NAS von extern zu erreichen.
          Falls aber viele Leute deren Dienste wollen wird das ganz schnell lästig.

          Gruß Markus

  5. Hallo Markus,
    danke für die Ideen zum RP. Ich bin regelmäßiger Synology-Forum Leser, aber ich komme nicht weiter.
    Ich möchte den 5001 Port nicht mehr freigeben und den 443 nutzen, um die DSM Oberfläche anzusteuern.
    Lege ich die Subdomain dsm.ddns.org mit Port 443 im RP an und lasse sie auf localhost:5000 zeigen, dann erreiche ich sie über den Browser nicht.
    Was mache ich gedanklich falsch?

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert