Mit DSM 7.2 wurde die Web Station überarbeitet und verbessert. Aus diesem Anlass habe ich den, bereits sehr alten, aber bisher immer noch gültigen Artikel, auf den neuesten Stand gebracht.
Damit Dienste eines lokalen Servers aus dem Internet erreichbar gemacht werden können benötigt es einiger Zutaten und Schritte. Da ein Zugriff von außen immer mit der Gefahr eines Angriffs verbunden ist, sollte der Zugriff immer so gut wie möglich abgesichert werden.
Das Tutorial funktioniert (abgesehen vom DiskStaion-Teil) für alle Server-Dienste in eurem LAN. Für das Tutorial verwende ich als Dienst den Webserver der DiskStation und als Anwendung Nextcloud. Das ganze Funktioniert aber auch mit jeder beliebigen Anwendung die auf der Web Station läuft. Über diesen Weg könnt ihr auch andere Synology-Pakete verfügbar machen, wie etwa DSM selbst oder Synology Photos oder die Surveillance Station. Dazu sind aber auf der DiskStation zusätzliche Einstellungen notwendig um die Sicherheit zu erhöhen. Diese kann ich im Rahmen dieses Artikels nicht alle abdecken.
Voraussetzungen
- Eine installierte Webanwendung auf eurer DiskStation.
- Einen konfigurierbaren (NAT/Portforwarding, optional DDNS) Router der mit dem Internet verbunden ist. Hier gibt es einige Stolpersteine, mehr dazu, weiter unten.
- Eine der beiden Optionen:
- entweder eine statische IP, die hat man in der Regel nicht als Privatkunde, bei manchen Providern kann man aber nachfragen, ob man eine bekommen kann. Andere Provider erlauben auch Privatkunden das Bestellen von Business-Paketen, die haben meist eine statische IP und sind oft nur minimal teurer als Privat-Pakete.
- oder einen Account bei einem DDNS-Anbieter, mehr dazu, weiter unten.
- (Optional) Eine eigene Domain. Natürlich könnt ihr die Nextcloud/DiskStation auch über die (statische) IP aufrufen, DDNS-Anbieter stellen meist Domains im Format <EinName>.<DDNSAnbieter>.<com/net/…> zur Verfügung.
DDNS einrichten
Habt ihr keine statische IP, kommt ihr um DDNS nicht herum, es sei denn ihr wollt jedes mal nach Ablauf der IP die neue IP im DNS eures Domainanbieters eintragen. Synology bietet euch für eure registrierte DiskStation eine Subdomain mit DDNS an und zwar kostenlos. Der Vorteil ist, neben den nicht vorhandenen Kosten, dass ihr den Synology-DDNS-Account direkt in der DiskStation eintragen könnt. Nachteil: Ihr habt nur genau eine Subdomain zur Verfügung <EureDS>.synology.me. Grundsätzlich reicht das auch aus, ihr habt ja auch nur eine externe IP. Selbst wenn ihr mehrere Dienste von außen aufrufen wollt – die vielleicht auch auf anderen Rechnern/Servern laufen und nicht auf der DS – dann ist das kein Problem. Mit dem DDNS-Hostnamen erreicht ihr über eure externe IP euren Router, der ist dann dafür zuständig die Anfrage zum richtigen Host in eurem LAN weiterzuleiten.
Beispiele: meineDS.synology.me(:8080) - Webserver über http https://meineDS.synology.me - Webserver über https http(s)://meineDS.synology.me/Nextcloud - Nextcloud http(s)://meineDS.synology.me/photo - PhotoStation https://meineDS.synology.me:5001 - DSM http(s)://meineDS.synology.me/blog - DS Blog, eure Homepage, sonstige Webseiten meineDS.synology.me:<Port> - Dienst auf einem anderen Rechner im LAN
Solltet ihr verschiedene (Sub)Domains bzw. virtual Hosts verwenden wollen, braucht ihr einen weiteren DDNS-Anbieter, bzw. einen Anbieter der euch mehrere Subdomains erlaubt. Habt ihr z.B. keine eigene Domain, könnt ihr die verschiedenen Subdomains des DDNS-Anbieters für verschiedene Dienste zu nutzen (siehe vhost). DiskStation sowie einige Router haben Vorkonfigurierte Anbieter eingespeichert. Einige Router, wie auch die DS erlauben das Hinzufügen von Anbietern. Wenn ihr die volle Freiheit – auch bei der Vergabe der Namen – haben wollt, benötigt ihr aber eine eigene Domain. Die gibt es, je nach Endung für ein paar Euro im Jahr.
Wie DDNS funktioniert
DNS (Domain Name Service) verknüpft eine Domain mit einer bestimmten IP. Wenn jemand die Domain besuchen möchte, bekommt er vom DNS die IP-Adresse mitgeteilt, die dahinter steckt. Aber diese DNS-Einträge sind (relativ) statisch. Wenn ihr also täglich eine neue IP zugewiesen bekommt, ist der DNS-Eintrag ungültig. Natürlich könnte man jedes Mal den DNS-Eintrag händisch aktualisieren, das ist aber dumm und funktioniert nicht wirklich, wenn euer Dienst/eure Seite rund um die Uhr erreichbar sein soll. DDNS (dynamic DNS) löst das Problem, indem es einen automatischen Updatemechanismus anbietet. Nachteil: Ihr braucht ein Tool, dass den DDNS-Eintrag für euch aktualisiert. Dieses Tool muss auf einem Rechner/Router in eurem LAN laufen und zwar praktisch immer (zumindest gibts kein Update wenn das Tool nicht läuft). So ein Tool kann man auf jedem PC oder einem Raspberry Pi installieren. Glücklicherweise haben aber viele Router und die DiskStation ein solches Tool.
Wählt die Lösung die für euch am besten passt
Ihr müsst jetzt mehrere Dinge prüfen. Es empfiehlt sich DDNS am Router zu konfigurieren, kann euer Router das nicht, könnt ihr auf die DS ausweichen. Informiert euch über das Angebot der vorkonfigurierten Anbieter, sollte euch keiner zusagen, könnt ihr einen anderen Anbieter wählen. Kann euer Router keine eigenen Anbieter hinzufügen, müsst ihr wieder auf die DS ausweichen.
Bevor ich eine statische IPv4 hatte, habe ich den DDNS-Dienst von Synology selbst sowie spDyn verwendet. Empfehlung kann ich euch aber keine geben. Da ich seit 2020 eine statische IP habe und die Anbieter ihre Angebote oft ändern. Oft werden kostenlose Konten mit der Zeit abgeschafft oder es gibt andere Einschränkungen. Anbieter werden auch oftmals aufgekauft oder aufgelöst.
Das Prinzip ist bei allen gleich. Ihr legt euch eine Subdomain an die mit eurer externen IP verknüpft wird. Da sich diese aber laufend ändert, bieten DDNS-Anbieter eine URL, über die die IP aktualisiert werden kann. Bekommt ihr eine neue IP vom Provider zugewiesen, muss jemand in eurem Netzwerk den DDNS-Anbieter benachrichtigen. Da der Router als Erster die neue Adresse mitbekommt ist es besser diesen das Update zu überlassen. Sollte der Router das nicht können, könnt ihr eben auch auf die DiskStation ausweichen, hier kann es aber zu einer kurzen Verzögerung bei der Aktualisierung kommen, vor allem wenn die DS nicht 24/7 im Betrieb ist. Habt ihr außer der DS keine anderen Server in eurem Netzwerk, sollte das aber kein Problem sein.
Im Anschluss zeige ich die Einrichtung des DDNS auf der DiskStation. Wollt ihr den Router nutzen, müsst ihr nach einer Anleitung für euer Modell im Netz suchen.
DDNS auf der DiskStation
Wie schon gesagt bietet Synology für jede registrierte DiskStation eine DDNS-Subdomain. Ich müsst dazu ein Synology-Konto anlegen und eure DS dort registrieren. Anschließend könnt ihr den DDNS-Dienst einrichten:
- Öffnet Systemsteuerung > Externer Zugriff > DDNS.
- Klickt auf Hinzufügen.
- Wählt jetzt einen Serviceanbieter aus. Verwendet ihr Synology, tragt anschließend eure gewünschte Domain ein. Der erste Teil der Domain ist frei wählbar (sofern die Subdomain noch nicht existiert) je nach Anbieter könnt ihr über das Dropdown verschiedene Domains auswählen. Bei anderen Anbietern müsst ihr die Anmeldeoptionen für euer Konto hinterlegen. Die IP-Adresse sollte bereits automatisch vorausgewählt sein.
- Klickt anschließend auf Verbindung testen, ihr seht dann ob ihr die richtigen Daten eingegeben habt.
- War der Test erfolgreich, klickt auf OK.
Ihr könnt beliebig viele verschiedene Anbieter hinzufügen, jeder Anbieter kann allerdings nur einmal hinzugefügt werden.
Ist euer Anbieter nicht in der Liste, geht ihr im “Hinzufügen”-Dialog einfach auf Anbieter anpassen. Vergebt einen Namen und fügt die Update-URL ein. Die Update-URL stellt der DDNS-Anbieter zur Verfügung und kann immer etwas abweichen. Die in der URL mit doppeltem Unterstrich gekennzeichneten Wörter sind Variablen Eure DS unterstützt vier Variablen, welche das sind, seht ihr im Dialog. Sollten die Variablen in der URL euers Anbieters anders lauten, müsst ihr diese Umbenennen. Das Update funktioniert nur, wenn ihr die Variablennamen von Synology verwendet.
Speichert die Einstellungen und ihr gelangt wieder in der vorherigen Dialog. Dort findet ihr für jede verwendete Variable ein Eingabefeld. Fahrt jetzt wie oben beschrieben fort. Habt ihr alles richtig eingegeben, zeigt euch die DiskStation sofort ob das Aktualisieren funktioniert, oder ob es einen Fehler gibt.
Eigene Domain einrichten
Ihr könnt eure eigene Domain verwenden, egal ob ihr eine statische IP habt, oder diese dynamisch zugewiesen bekommt. Bei statischen IPs müsst ihr in den DNS-Einstellung eurer Domain-Verwaltung einen Eintrag vom Typ “A” erstellen und als Ziel eurer gewünschten Domain einfach eure statische IP eintragen.
Habt ihr keine statische IP, müsst ihr zuerst eine DDNS-Domain einrichten. Erstellt dann in der Domainverwaltung einen DNS-Eintrag vom Typ “CNAME”. Ihr lasst eure (Sub-)Domain auf eure DDNS-Domain verweisen.
Jetzt könnt ihr eure eigene Subdomain für den Zugriff auf Webanwendungen und Dienste auf eurer DiskStation (oder jedem anderen Server in eurem LAN) verwenden. Vergesst nicht, die Domain zeigt letztendlich nur auf euren Router, ihr könnt hier keine Protokolle (http, https, ftp, …) oder Portnummern angeben. Der Router entscheidet dann, basierend auf der Portnummer, wo er die Anfrage hinleiten soll. Wenn ihr also keine Portnummer oder kein Protokoll angebt, landet ihr immer auf Port 80 also auf dem Webserver über HTTP. Vergesst nicht das https:// wenn ihr nur 443 auf eurem Router offen habt. Möchtet ihr nicht zum Webserver, müsst ihr die Portnummer des Services anhängen. Möchtet ihr eure Domain an einen bestimmten Service oder eine bestimmte Website auf eurem Webserver binden, müsst ihr mit htaccess, vhosts oder anderen Techniken arbeiten.
Portweiterleitung
Der erste Schritt ist erledigt. Allerdings werdet ihr beim Aufruf eurer DDNS-Domain nicht weit kommen. Ihr erreicht zwar jetzt eure externe IP, also den WAN-Anschluss eures Routers, doch der wird euch nicht hineinlassen. Denn aus Sicherheitsgründen weisen Router alle eingehenden Anfragen ab. Ihr müsst diesen also so konfigurieren, dass er die Anfrage annimmt und diese auch richtig weiterleitet. Denn ihr wollt ja nicht den Router erreichen, sondern den Dienst auf eurer DiskStation.
Automatische Konfiguration
Die DiskStation bietet die Möglichkeit kompatible Router direkt zu konfigurieren. Von automatischen Konfigurationen am Router rate ich dringend ab. Ihr wisst nie genau was konfiguriert wird bzw. wie euer Router darauf reagiert. Im besten Fall klappt alles wie es soll, wenn ich Pech habt verarbeitet euer Router die Konfiguration falsch und ihr erhaltet keinen Zugang. Im schlimmsten Fall öffnet ihr Angreifern unbemerkt einen Zugang.
Damit euer Router die Anfrage richtig weiterleitet müsst ihr am Router Port-Forwarding (Portweiterleitung, Destination-NAT) konfigurieren.
Seit der Urfassung dieses Artikels sind schon einige Jahre vergangen und mittlerweile hat fast jeder Internet-Provider verstanden, dass auch Privatkunden Server/Dienste im Heimnetz aus dem Internet erreichbar machen wollen. Vorbei ist die Zeit von simplen Access-Points oder Geräten mit beschnittener Firmware, die kaum eine Möglichkeit zur Konfiguration bieten. Solltet ihr noch immer ein Altgerät zuhause haben, oder das neue Gerät dennoch eingeschränkt sein, besteht oft die Möglichkeit für einen Aufpreis ein besseres Gerät zu bekommen oder das Gratisgerät gegen ein eigenes zu tauschen. Die bekannten deutschen Provider bieten meines Wissens sowieso schon lange FRITZ!Box-Geräte oder zumindest die Option eine eigene FRITZ!Box zu verwenden. Die oben genannten Einschränkungen kenne ich – und findet man teilweise auch heute noch – von den großen Providern in Österreich. Unabhängig davon welcher Provider und welches Gerät, Portweiterleitung muss unterstützt werden.
DHCP – statische IP-Vergabe
Damit die weiteren Schritte funktionieren, muss die DiskStation immer die selbe lokale IP-Adresse zugewiesen bekommen. Die Standardeinstellung vieler Router vergibt die IP-Adressen dynamisch und zeitlich begrenzt. In den DHCP-Einstellungen des Routers gibt es meist eine Tabelle für statische IP-Adressen. Hier müsst ihr nur die MAC-Adresse eurer DS eingeben und ihr die gewünschte IP zuweisen. Sollte der Router das nicht können, kann die DiskStation als DHCP-Server konfiguriert werden. Dazu muss man den DHCP des Routers aber deaktivieren können.
NAT/Portweiterleitung
Portforwarding findet man je nach Routerfirmware unter verschiedenen Namen: Portweiterleitung, Portforwarding, NAT, UPnP oder wie auf der FRITZ!Box als Freigabe.
- Geht in das entsprechende Menü auf eurem Router (FRITZ!Box: Internet > Freigaben).
- Fügt einen neuen Eintrag hinzu
- Grundsätzlich sind folgende Angaben erforderlich:
- der Server/das Gerät bzw. dessen IP im lokalen Netz
- den internen Port, also den Port den der Dienst oder die Anwendung nutzt, für Webseiten/Webanwendungen ist das üblicherweise Port 443
- den externen Port, also den Port den ihr beim Aufruf im Browser angebt; nutzt ihr HTTPS in der URL wird automatisch Port 443 verwendet
Achtung vor HTTP
HTTP (Port 80) ist ungeschützt, verwendet immer die sichere HTTPS (Port 443) Variante außer es lässt sich nicht anders vermeiden (siehe untern). Wenn ihr Port 80 verwenden müsst, bedenkt immer dass die Übertragung unverschlüsselt abläuft und ein Sicherheitsrisiko darstellt.
Gebt nur die Ports frei, die ihr auch Tatsächlich braucht. Ports die nicht benötigt werden, bieten eine zusätzliche Angriffsfläche von außen. Und gebt NIE, NIE alle Ports frei.
Um HTTPS (443) nutzen zu können, braucht ihr ein SSL-Zertifikat. Das könnt ihr über die DS erledigen (siehe unten). Im Bild seht ihr zwar einen Eintrag für den Port 80, der ist aber deaktiviert, warum das so ist, könnt ihr ebenfalls im SSL-Teil nachlesen.
Sofern ihr den Zugang für den Webserver eurer DiskStation konfiguriert habt, könnt ihr diesen bereits erreichen. Testet jetzt ob ihr den Webserver eurer DiskStation erreicht. Gebt im Browser (nutzt euer Smartphone oder ein anderes Gerät, dass nicht im selben LAN hängt) die DDNS-Domain ein die ihr für den Zugriff konfiguriert habt. Ihr solltet das Testbild der WebStation sehen, sofern ihr die index.php im /web-Ordner nicht getauscht/geändert habt oder sonstige Umleitungen eingestellt habt.
Habt ihr den Zugang für einen anderen Dienst konfiguriert, und der Dienst läuft bereits, können zusätzliche Konfigurationsschritte erforderlich sein (siehe unten). Zunächst kümmern wir uns aber um das Thema SSL-Verschlüsselung und virtuelle Hosts.
https-Verschlüsselung/SSL-Zertifikat
Eure Webseite/Anwendung ist zwar über den HTTPS-Port erreichbar, allerdings noch nicht abgesichert, da euch das Zertifikat fehlt. Naja nicht ganz, jede DiskStation wird mit einem Standardzertifikat ausgeliefert, dass für synology.com ausgestellt ist. Damit könnt ihr grundsätzlich schon abgesicherte HTTPS-Verbindungen einrichten. Jetzt kommt das große Aber: Ihr seid nicht im Besitz von synology.com. Eure verwendete Domain und das Zertifikat passen überein. Das funktioniert zwar, wird aber bei Sicherheitsprüfungen als unsicher eingestuft. Solche Sicherheitsprüfungen führen eure Browser durch aber auch verschiedene Anwendungen die über HTTPS kommunizieren. Im Browser werdet ihr mit einer entsprechenden Sicherheitswarnung darauf hingewiesen. Je nach Browser bzw. Browser-Einstellungen kann diese Warnung bestätigt werden und die Domain wird aufgerufen. Je nach Konfiguration des Webservers (siehe unten), wird die Weiterleitung verweigert. Auch gewisse Clients erlauben keinen Verbindungsaufbau zu Servern mit unsicheren Zertifikaten und spätestens wenn ihr Anwendungen als Docker-Container auf eurer DiskStation betreiben wollt, benötigt ihr ein eigenes – für die Domain ausgestelltes – Zertifikat, d.h. sogenannte “self-signed Certificates” fallen da auch raus.
Besitzt ihr kein Zertifikat passend zur Domain, könnt ihr euch aber über die DiskStation ein kostenloses Zertifikat von Let’s Encrypt holen. Einziger Nachteil, ihr müsst das Zertifikat alle 90 Tage erneuern. Das geht zwar recht flott und ihr werdet vorher per Mail benachrichtig, kann aber dennoch lästig sein. Theoretisch würde eure DiskStation das Zertifikat auch automatisch erneuern, dazu müsste aber Port 80 weitergeleitet werden und das solltet ihr, wie erwähnt, nicht dauerhaft machen.
Let’s Encrypt und DDNS-Domains
Let’s Encrypt limitiert die Anzahl an Zertifikate pro Domain. Verwendet ihr eine DDNS-Domain, kann es sehr gut sein, dass ihr dafür kein Zertifikat mehr anfordern könnt.
Let’s Encryp Zertifikat einrichten
- Damit das Zertifikat angefordert werden kann, muss eure DiskStation über die Ports 80 und 443 erreichbar sein. Auch für das Erneuern des Zertifikats muss 80 und 443 erreichbar sein. Fügt eurer NAT-Konfiguration also einen Eintrag für den externen Port 80 auf den internen Port 80 und die IP eurer DS ein. Vorhin habe ich noch gesagt den Port 80 freizugeben wäre ein Sicherheitsrisiko. Nach dem Einrichten könnt ihr den Port auch gleich wieder schließen. Für das Erneuern müsst ihr ihn wieder kurz öffnen und dann wieder schließen. Je nach Router-Firmware könnt ihr den Eintrag in der NAT-Tabelle einfach deaktivieren und müsst ihn nicht jedes mal neu anlegen.
Firewall nicht vergessen
Habt ihr die Firewall der DiskStation oder eine andere Firewall in eurem LAN konfiguriert, muss diese die Zugriffe auch zulassen. Das gilt für alle Einstellungen die hier vorgenommen werden.
- Öffnet Systemsteuerung > Sicherheit > Zertifikat.
- Klickt auf “Hinzufügen”.
- Wählt “neues Zertifikat hinzufügen”.
- Wählt “Zertifikat von Let’s Encrypt abrufen”.
- Einstellungen:
- Gebt euren Domainnamen – für den das Zertifikat gelten soll – an. Ihr könnt für alle Domains und Dienste ein einziges Zertifikat erstellen oder auch für jede Domain ein eigenes. Habt ihr unterschiedliche externe Benutzer, empfiehlt es sich mehrere Zertifikate anzulegen. Ihr könnt angeben, welcher Dienst welches Zertifikat nutzen soll, auch jeder vHost kann sein eigenes Zertifikat haben.
- Gebt eine Emailadresse an.
- Gebt bei alternativen Namen wieder euren Domainnamen an und andere Domainnamen die für das Zertifikat gelten. Es sind nur Domains erlaubt, IPs nicht, weder interne noch externe, auch der Alias der DiskStation ist nicht erlaubt.*
- Fordert das Zertifikat an.
- Schlägt das fehl habt ihr mit sehr hoher Wahrscheinlichkeit den Port 80 nicht offen bzw. die Firewall nicht beachtet oder ihr hab bei den Domains eine ungültige Angabe gemacht.
*Das gilt nicht für selbst signierte Zertifikate.
vhost Einrichten
Die Einrichtung eines vhosts ist optional. Mit einem Virtual Host könnt ihr für eine bestimmte Domain einen eigenen document root angeben. Eure Domain landet im Standard – document root also /web
auf der DiskStation. Durch den vhost könnt ihr angeben in welchem Unterordner von /web
ihr stattdessen landet. Wollt ihr also statt mit meinedomain.com/Nextcloud
direkt mit meinedomain.com
auf eure Nextcloud zugreifen, müsst ihr entweder einen vhost einrichten oder eine Umleitung mittels .htaccess einrichten. Der vhost kann aber noch mehr, im Gegensatz zur .htacces könnt ihr noch die Version eures Webservers und für PHP festlegen.
- Öffnet im DSM die WebStation.
- für die meisten Webanwendungen ist PHP erforderlich, sofern es sich nicht um eine statische Homepage handelt. Ihr müsst also zuerst unter Skript-Spracheinstellungen ein PHP-Profil einrichten, sofern ihr das nicht schon erledigt habt.
- Seit DSM 7.2 ist die Konfiguration virtueller Hosts in zwei Bereiche aufgeteilt. Klickt zuerst auf Webdienst.
- Klickt auf “Erstellen” und wählt dann “Website für native Skript-Sprachen”. Wählt anschließend über die Dropdowns das gewünschte, auf der DiskStation installierte PHP-Paket und das dafür erstellte PHP-Profil aus.
- Nach einem Klick auf weiter vergebt ihr einen beliebigen Namen sowie eine Beschreibung und wählt den document root, also das Verzeichnis unter
/web
in dem eure Webanwendung liegt, für die ihr den virtuellen Host anlegen wollt. Anschließend wählt ihr noch den gewünschten WebServer, entweder Nginx oder Apache und legt dafür Timeouts fest.
Lieber den Apache verwenden
Nginx mag zwar in vielen Fällen besser bzw. geeigneter sein als der Apache. Allerdings nutzt eure DiskStation Nginx als Webserver für DSM und alle Synology-Pakete mit Weboberfläche. Dementsprechend schwierig ist es, die Konfiguration des Nginx anzupassen und genau das ist bei den meisten Webanwendungen notwendig. Bringt ihr die Nginx-Konfiguration in einen Zustand, sodass der Webserver nicht mehr Ordnungsgemäß läuft, habt ihr keinen Zugriff auf DSM mehr. euch bleibt dann nur noch der SSH-Zugriff um das Problem zu beheben.
Wollt ihr dennoch Webanwendungen per Nginx betreiben, empfehle ich euch auf Docker-Container auszuweichen. Von vielen Anwendungen existieren Images mit vorkonfiguriertem Nginx (oder Apache) oder ihr könnt Nginx als Container bereitstellen.
- Klickt anschließend auf “Weiter” und bestätigt die Zusammenfassung mit “Erstellen”.
- Wechselt jetzt in den Bereich Webportal.
- Klickt auf “Erstellen” und wählt Webdienstportal.
- Wählt über das Dropdown den zuvor erstellten Dienst aus.
- Gebt den Hostname an, den ihr vorhin eingerichtet hab.
- Setzt den Haken bei Port 80/443
- Aktiviert HSTS, damit erreicht ihr zwei Dinge, erstens wird ein Browser immer eine HTTPS-Verbindung für diese Domain aufbauen, selbst wenn ihr HTTP eingebt oder einen HTTP-Link anklickt. Zweitens wird die weiter oben erwähnte Zertifikatsprüfung aktiviert. Warnungen zu ungültigen Zertifikaten im Browser können jetzt nicht mehr weggeklickt werden.
- Bestätigt die Einstellungen mit einem Klick auf “Erstellen”.
Zuletzt müsst ihr noch sicher gehen, dass der Webserver auch das richtige Zertifikat für den virtuellen Host ausliefert. Wechselt dazu wieder in den Bereich Sicherheit > Zertifikat in der Systemsteuerung und klickt auf “Einstellungen”. In der Liste findet ihr jetzt den erstellen virtuellen Host. Im Dropdown könnt ihr das für die Domain erstellte Zertifikat zuweisen.
Eure Webanwendung ist jetzt direkt erreichbar, ohne die Angabe des Unterordners. Vergesst aber nicht, solltet ihr andere Webseiten/Dienste über den Webserver laufen haben, dass diese nicht unter dem angegebenen Hostnamen erreichbar sind. Entweder ihr richtet euch eine 2. Subdomain ein die ebenfalls auf euren DDNS-Hostnamen zeigt und somit wieder im document root (/web
) landet, oder ihr konfiguriert für jede Website/Dienst eine eigene Subdomain + vhost.
Eigene Subdomain für Synology Pakete
Wollt ihr für Synology Pakete eine eigene Subdomain verwenden – z.B. um diese einfacher auseinander halten zu können bzw. nicht immer den Port angeben zu müssen – könnt ihr das nicht über virtuelle Hosts erledigen. Auch wenn die Weboberflächen der Pakete auf dem Webserver laufen, habt ihr keinen direkten Zugriff auf den jeweiligen document root.
Um eine eigene Subdomain zu verwenden, könnt ihr zwei Lösungen verwenden. Beide findet ihr im Anmeldeportal der DiskStation. Dort könnt ihr für Pakete eigene Domains vergeben.
Achtung
Die benutzerdefinierten Domains die ihr im Reiter Anwendungen konfigurieren könnt, sind an den Zugriff auf DSM gebunden. Wenn ihr per Firewall den Zugriff auf DSM einschränkt, gilt das auch für die Pakete die ihr über die benutzerdefinierte Domain erreichen wollt.
Der bessere Weg, der euch auch mehr Kontrolle gibt, heißt Reverse Proxy. Diesen findet ihr ebenfalls im Anmeldeportal unter Erweitert.
Reverse Proxy
Mehr zum Thema Reverse Proxy und Firewall-Konfiguration könnt ihr in meinem Buch nachlesen.
Webanwendung installieren/anpassen
Grundsätzlich ist es am besten Webanwendungen gleich mit der gewünschten (Sub-)Domain bzw. dem vHost zu installieren. Einige Anwendungen könnten bei der Installation ein SSL-Zertifikat bzw. die Verwendung einer Domain voraussetzen. Habt ihr die Anwendung bereits eingerichtet, müsst ihr gegebenenfalls die Domain in den Einstellungen bzw. der Konfigurationsdatei anpassen.
Für Nextcloud muss die Domain in der Konfig (/web/nextcloud/config/config.php
) als trusted Domain eingetragen werden. Außerdem ist es sinnvoll die Variable overwrite.cli.url
zu setzen. Die dort festgelegte URL wird von Nextcloud für alle generierten URLs benutzt, beispielsweise für Freigabelinks, Kalender und Kontakte (CardDAV, CalDAV).
Namensauflösung im LAN
Viele Router blockieren standardmäßig die Namensauflösung für Ziele im eigenen LAN. Viele Consumer-Produkte bieten auch nicht die Möglichkeit diese Konfiguration zu ändern. Der Aufruf eurer (Sub-)Domain im eigenen LAN funktioniert dann nicht. Lösung Nummer 1: ihr tragt die gewünschten Subdomains inklusive lokaler IP-Adresse des NAS in der hosts-Datei ein. Lösung Nummer 2: ihr konfiguriert einen DNS-Server im LAN (Anleitung folgt).
Ich hoffe ihr könnt die DiskStation jetzt über das Internet erreichen. Solltet ihr Probleme haben, geht nochmal alles Schritt für Schritt durch und testet jeden einzelnen Schritt. Für Tests könnt ihr auch Port 80 , also eine ungesicherte Verbindung sowie eine Test-index.html unter /web
verwenden. Ihr könnt auch das Standard-Zertifikat eurer DiskStation nutzen, müsst dann aber HSTS vorerst deaktiviert lassen. Nutz unsichere Konfigurationen aber niemals mit Echtdaten, d.h. logt euch niemals bei Webanwendungen mit echten Logindaten über ungesicherte Verbindungen ein, gewährt keinen Zugriff auf tatsächlich verwendete Dateien. Am besten testet ihr ungesicherte Verbindungen mit einer leeren DiskStation ohne tatsächliche Dateien und tatsächlich verwendeten Anwendungen.
DSM niemals im Internet freigeben
Macht DSM niemals im Internet zugänglich, auch nicht über HTTS. Gebt den DSM Port nicht am Router frei und sichert DSM und andere kritische Zugriffe per Firewall ab. Wenn ihr von außerhalb eures LAN auf kritische Ressourcen – wie DSM – zugreifen wollt/müsst, richtet einen VPN-Zugang ein.
Ich bin leider kein Netzwerk(sicherheits)spezialist. Das Thema Sicherheit ist sowieso ein Thema für sich. Ich kann euch nur empfehlen euch etwas einzulesen. Lasst euch nicht paranoid machen, nehmt das Thema aber auch nicht auf die leichte Schulter. Mit eingeschränkter Portfreigabe und SSL-Zertifikat seit ihr schon auf einem guten Weg. Bedenkt aber auch, sobald ihr einen externen Zugang geschaffen habt, ist eure DiskStation ein Ziel für potentielle Angriffe. Nachdem ihr alles konfiguriert habt und alles läuft wie ihr das wollt, testet aber auf jeden Fall, ob auch NUR das läuft was ihr wollt. Testet ob ihr von außen auf Dienste zugreifen könnt, die ihr nicht freigeben wollt. Testet, ob ihr über HTTP zugreifen könnt etc. Die DiskStation hat eine eigene Firewall die ihr konfigurieren könnt.
Möchtet Ihr noch detailliertere Schritt-Für-Schritt-Anleitungen für euer Synology NAS, mit viel mehr Hintergrundinformationen, Tipps und Tricks? Dann holt euch mein Wissen als als umfassendes Praxis-Handbuch. Mehr Infos findet ihr in keinem Buch zu Synology und alles in der von mir gewohnten Qualität.
Die dritte Auflage enthält Aktualisierungen zu DSM 7.1 und den Updates von WebStation, Surveillance Station und Synology Photos.
Das Buch direkt beim Verlag
Das Buch auf Amazon