Eigener Homeserver Setup - Synology NAS Einrichten
Synology DiskStation einrichten für Anfänger mit Erläuterungen zu VPN, DDNS über Netcup, Firewall, Nginx Proxy Manager usw.
Inhaltsverzeichnis
In dieser Anleitungsreihe geht es darum seine Homeserver-Umgebung einzurichten. Damit ein Blogpost nicht zu lang wird, habe ich das Set-up in mehrere Beiträge unterteilt. Hier beschäftige ich mich mit meinem Synology NAS. Es ist eine Anleitung für Anfänger und zeigt eine mögliche komplette Einrichtung von a bis z.
Dennoch könnten einige Punkte unklar bleiben. In diesem Fall bitte ich darum die Kommantarfunktion zu nutzen. Ich werde dann gegebenenfalls den Text ergänzen oder einen neuen Blogpost veröffentlichen.
Synology NAS
Schaut man sich bei Google Trends den Vergleich von Synology zu QNAP und Asustor an, sieht man schnell, dass der Hersteller Synology wohl am bekanntesten ist, obwohl nicht mehr so häufig danach gesucht wird wie im Jahr 2014.
Selbstverständlich gibt es noch weitere NAS-Hersteller, auf die ich hier aber nicht eingehen möchte. Ich habe mir vor einiger Zeit eine Synology DS220+(Amazon Affiliate Link) gekauft, insbesondere weil die Möglichkeit gegeben ist, den integrierten RAM zu erweitern.
Die Einrichtung unterscheidet sich nicht sonderlich von der bei einem Asustor NAS, worüber ich vor ein paar Tagen geschrieben habe. Dennoch möchte ich hier noch mal zeigen, wie das Set-up des eigenen Synology NAS aussehen könnte.
Einbau
Zusätzlicher RAM
Vor dem Einschalten muss bei Bedarf zunächst der zusätzliche RAM eingelegt werden. Ich habe mir einen Crucial CT8G4SFS8266 8GB Speicher(Amazon Affiliate Link) gekauft. Leider gibt es keine Garantie dafür, dass der RAM erkannt wird. Beim Einsetzen muss man darauf achten, dass der RAM-Riegel wirklich fest eingesetzt werden muss. Ich habe die ersten paar Mal den RAM zu schwach eingeführt und mein NAS startete weiterhin mit 2 GB. Erst nachdem ich es nochmal probiert habe und ein Klicken hörte, ging es mit 10 GB.
Festplatten
Wie schon bei meinem Asustor NAS, nutze ich auch in der Synology Diskstation kein RAID, obwohl ich 2 Festplatten-Slots habe. RAID ist kein Backup und es ist mir zu teuer, um es neben einem Backup einzusetzen. Außerdem möchte ich lieber eine SSD als Systemplatte, denn das bringt Vorteile bezüglich Geschwindigkeit, Stromverbrauch und Lautstärke. Ich verwende eine ältere Version einer Crucial MX500 500GB SSD(auch Amazon Affiliate Link) quasi als Systemplatte (das DSM wird auf jede Festplatte geschrieben) und eine ältere Version einer Western Digital WD Red Plus 4TB HDD(wieder Amazon Affliate Link) als zusätzlichen Speicherplatz. Prinzipell kann jede HDD genommen werden, ich nutze gerne WD Red oder Seagate Ironwolf.
NAS einrichten
Verbindung zum Netzwerk
In meiner Router-Netzwerk-Anzeige suche ich, nachdem ich das NAS über LAN mit dem Netzwerk verbunden habe, nach der IP-Adresse, die vom DHCP-Server für mein NAS vergeben wurde.
Außerdem sorge ich dafür, dass das Gerät immer die gleiche IP-Adresse bekommt.
Am besten ist es, wenn sich die IP-Adresse außerhalb der DHCP-Range befindet, sie also vom Router nicht vergeben wird. Sollte der Router keine Einstellung dafür haben, eine IP-Adresse fest zu vergeben, lässt sich auch später in den Einstellungen der Synology konfigurieren, dass die IP-Adresse gleich bleibt. Die Änderungen werden erst wirksam, wenn die DiskStation neu startet.
Die IP-Adresse gebe ich nun in meinen Webbrowser ein. Es erscheint ein Web Assistent.
Bei dem zweiten Bildschirm drücke ich auf “Jetzt installieren”.
Wenn die Installation fertig ist, erstelle ich ein Administratorkonto.
Es empfiehlt sich dabei ein starkes Passwort zu verwenden.
Die Verbindung mit Quick-Connect kann erst einmal übersprungen werden. Ich setze auch nicht den Haken beim Freigeben meines Netzwerkstandorts über Synology-Find.
Anschließend landet man auf dem Desktop des DSM.
Wenn man eine feste IP-Adresse nicht über den DHCP-Server (Router) einrichten kann, ist dies in der Systemsteuerung unter Netzwerk möglich. Hier einfach “Bearbeiten” auswählen und auf manuell schalten.
Festplatten einrichten
Jetzt müssen wir die Festplatten als Volume mounten. Dazu den Speichermanager öffnen, der sich unter dem Menübutton verbirgt.
Unter dem Menüpunkt Speicherpool drücke ich auf erstellen.
Im nächsten Schritt wähle ich bessere Leistung, da mir ein Volume pro Pool reicht. Um ehrlich zu sein, weiß ich nicht, ob es ohne RAID einen Unterschied macht, was man hier wählt.
Als RAID-Typ wähle ich Basis.
Anschließend wähle ich nur die SSD aus.
Jetzt erstelle ich ein neues Volume.
Ich möchte den benutzerdefinierten Weg.
Danach wähle ich den gerade erstellten Speicherpool.
Als Dateityp möchte ich Btrfs. Im Gegensatz zum Asustor NAS kann ich hier dann immer noch Benutzerkontingente anlegen.
Der gesamte Speicher sollte zugewiesen werden.
Jetzt wiederhole ich alle Schritte mit der HDD. Am Ende habe ich dann zwei Volumes.
Home-Ordner für Benutzer
Jeder Benutzer soll einen Home-Ordner haben, in den er seine Dateien speichern darf. Glücklicherweise ist auch hier (wieder im Gegensatz zum Asustor-System) möglich auszusuchen, wo sich der Ordner befinden soll. In der Systemsteuerung gehe ich dazu auf Benutzer und kann den Home-Dienst aktivieren inklusive Papierkorb.
Unter Gemeinsamer Ordner ist nun homes zu sehen, ich drücke auf “Bearbeiten”.
Ich möchte nicht, dass mir dieser Ordner in der Netzwerkumgebung angezeigt wird.
Netzlaufwerk verbinden
Ich möchte jetzt das NAS als Netzlaufwerk verbinden.
Windows
Im Datei-Explorer drücke ich unter “Dieser PC” auf Netzwerkadresse hinzufügen.
Hier gebe ich nach zwei Backslashs die IP-Adresse des NAS ein, inklusive dem Verzeichnis home.
Nachdem ich die Anmeldedaten eingegeben habe, erreiche ich ein leeres Fenster.
Zum Test erstelle ich mal eine Textdatei.
Diese sehe ich inzwischen auch im NAS.
Android
Ich verwende das Programm CX File Explorer (es geht auch jeder andere, der Netzlaufwerke erstellen kann).
Cx File Explorer File manager app with clean interface to provide easier management of files
In der App erstelle ich einen neuen Speicher unter “Netzwerk”.
Ich wähle SMB. Beim Host kann der Host (Name) des Synology NAS eingegeben werden.
Am Ende sehe ich auch hier, die eben erstelle Textdatei.
Freigabeordner erstellen
Es ist möglich weitere Freigabeordner über die Systemsteuerung zu erstellen.
Ich erstelle den Ordner backup auf dem Volume 1.
Daten-Prüfsumme finde ich grundsätzlich auch gut.
Ich erteile dem Admin und mir die Rechte zum Lesen und Schreiben.
Benachrichtigungen aktivieren
Das NAS soll mir Benachrichtigungen per Mail senden können, das muss aktiviert werden. Das ist in der Systemsteuerung unter “Benachrichtigungen” möglich.
Festplatten prüfen und bereinigen
Im Speichermanager vergewissere ich mich, dass Benachrichtigungen und der monatliche Bericht aktiviert sind.
Im Test Planer sollte bereits ein Auto S.M.A.R.T Test vorhanden sein. Ich erstelle einen zusätzlichen Test.
Ich wähle erweiterter Test.
Im Zeitplan stelle ich ein, dass es alle 6 Monate wiederholt werden soll.
Jetzt erstelle ich beim Speicherpool einen Zeitplan für eine Datenbereinigung.
Hier gebe ich an, wie häufig der Vorgang wiederholt werden soll.
Als Ziel habe ich alle Pools gewählt.
Für die Speicheranalyse lade ich aus dem Paket-Zentrum den Speicher Analysator runter.
Ich möchte einen wöchentlichen Bericht und habe dafür einen neuen Unterordner im Freigabeordner backup erstellt.
Ich erstelle mir auch ein Berichtsprofil (ich lasse alle Menüpunkte unverändert, deshalb spare ich mir die Beschreibung). Eventuell sollte man einige Berichtselemente abwählen, wenn sie einem uninteressant erscheinen.
Papierkorb
Nun kann eine automatische Papierkorbleerung aktiviert werden. Das ist im Aufgabenplaner möglich.
Ich möchte, dass die Leerung jeden Freitag stattfindet.
Außerdem sollen noch frisch in der Tonne liegende Dateien behalten werden. Erst wenn sie am Freitag schon länger als 14 Tage drin liegen, dürfen sie automatisch gelöscht werden.
Dynamische Domain
Wenn man keine DynDNS in der Fritz!Box oder einem anderen Gerät im Heimnetzwerk eingerichtet hat, kann man das in der DiskStation nachholen. Voraussetzung ist eine öffentliche IPv4 Adresse (kein DS-Lite). Diese sollte man zum Beispiel sehen können, wenn man eine Seite wie WieistmeineIP aufruft.
Netcup
Wieder einmal empfehle ich Netcup (Ref-Link). Hier kostet eine .de-Domain 5 € im Jahr (dauerhaft, also auch im zweiten Jahr). Das Gute ist, dass hier auch eine API angeboten wird, über die das NAS die DNS-Einträge ändern kann.
Ich möchte jetzt die gekaufte Domain als Adresse für mein Zuhause nutzen, ich benötige dazu den API-Schlüssel und das API-Passwort. Im Gegensatz zum Vorgehen bei der Fritz!Box wird kein zusätzliches Webspace benötigt.
Zunächst installiere ich PHP 7.4 auf dem NAS.
Danach erstelle ich den Freigabeordner, in den ich meine Skripte legen möchte.
Glücklicherweise hat ein Mitarbeiter von Netcup ein inoffizielles PHP-Skript erstellt. Es soll dafür sorgen, dass die eigene aktuelle IP-Adresse in den DNS-Einstellungen der Domain eingetragen wird. Das Skript von Lars-Sören Steck kann hier heruntergeladen werden.
Im Skript-Ordner lege ich zwei Unterordner an, für die Root-Domain und die Wildcard-Domain.
Bevor ich das Skript in die Ordner reinlege, kopiere ich die Datei config.dist.php und ändere sie zu config.php. Darin passe ich die Werte an. Bei der Zeile mit Host gebe ich ein @ ein. Dadurch wird die Domain ohne Subdomain angepasst.
define(‘HOST’, ’@’);
Dieses Datenpaket lade ich in den ddns_netcup und den ddns_netcup_root Ordner.
Im ddns_netcup Ordner passe ich die Host-Zeile an.
define(‘HOST’, ’*’);
Damit ändere ich sowohl die Root-Domain als auch jede Subdomain, die nicht genauer definiert ist.
Nun muss das Skript nur noch ausgeführt werden. Dazu eine Aufgabe im Aufgabenplaner erstellen mit benutzerdefiniertem Skript. Als Skript muss jeweils über php das Update-Skript aufgerufen werden.
php volume1/script/ddns_netcup/update.php
php volume1/script/ddns_netcup_root/update.php
Als Frequenz gebe ich alle 30 Minuten ein. Wenn man weiß, wann sich die IP-Adresse ändert, kann man den Zeitraum natürlich eingrenzen. Man kann natürlich auch eine höhere Frequenz einstellen.
Troubleshoot
Wenn es nicht funktioniert, sollte man zunächst gucken, ob die eigene IP-Adresse in den DNS-Einstellungen der Domain auftaucht. Es müsste ein A Eintrag vorhanden sein. Wenn nein, müsste man in den API-Logs schauen, warum nichts aktualisiert wurde.
Manchmal dauert es bis die DNS Einstellung aktualisiert ist. Man kann versuchen unter https://ping.eu/nslookup/ die eigene Domain einzugeben und zu schauen, welche IP-Adresse ausgegeben wird. Ansonsten sollte man auch ein lokales Terminal aufrufen und versuchen mit ping domain.de
die Domain zu pingen.
Nutzt man keinen Reverse-Proxy auf einem anderen Gerät, muss man am Router eine Portweiterleitung der Ports 80 und 443 an das Synology NAS einrichten. Als Reverse Proxy kann der eingebaute genutzt werden oder sowas wie Nginx Proxy Manager (dazu später mehr).
Eine Alternative dazu wäre QuickConnect von Synology.
DDNS
Eine andere Möglichkeit ist es unter dem Menüpunkt Externer Zugriff in der Systemsteuerung auf “Hinzufügen” (vordefinierte Dienstanbieter) oder “Anpassen” (Dienstanbieter selbst definieren) zu drücken.
Damit kann man auch Dienste wie DuckDNS zurückgreifen, indem unter “Anpassen” ein neuer Dienst angelegt wird.
Danach kann ein neuer DDNS-Dienst hinzugefügt werden.
Sicherheit
Als Nächstes sollte man gegebenenfalls einige Sicherheitseinstellungen vornehmen.
iFrame Einbindung
Die Einbindung als iFrame sollte in der Systemsteuerung deaktiviert werden, solange man diese Funktion nicht benötigt.
Firewall
Als Nächstes sollte die Firewall aktiviert werden.
Unter Regeln bearbeiten lassen sich neue Regeln anlegen. In der ersten Regel möchte ich dem lokalen Netzwerk den Zugriff zu allen Ports erlauben.
Bei der spezifischen IP gebe ich den Bereich 10.0.0.0 - 10.255.255.255 an.
Als Nächstes möchte ich auch dem Bereich zwischen 172.16.0.0 - 172.31.255.255 den Zugriff auf alle Ports erlauben (man könnte auch stattdessen einzelne Dienste auswählen).
Dann benötige ich den Zugriff aus dem Bereich 192.168.0.0 - 192.168.255.255
Als Letztes verweigere ich den Zugriff mit allen anderen IPs. Wichtig ist die Reihenfolge der Regeln, da sie von oben nach unten ausgeführt werden. Packt man die Regel mit “Verweigern” ganz nach oben, werden die restlichen Regeln nicht mehr beachtet.
DoS-Schutz
Als Nächstes aktiviere ich den DoS Schutz.
Standard-Ports ändern
Zuletzt ändere ich die Standard-Ports in den DSM-Einstellungen.
Passwort-Einstellungen
Für alle Benutzer lege ich fest, dass Sonderzeichen im Passwort vorkommen müssen, außerdem sollen schwache Passwörter ausgeschlossen werden.
Für die Admin-Benutzer soll überdies die 2-Faktor-Authentifizierung erzwungen werden.
Daraufhin öffnet sich der Einrichtungsassistent. Es wird eine Authentifizierungsapplikation benötigt. Folgende Software ist unter anderem möglich:
Android - Google Authenticator iOS - Google Authenticator Windows - WinAuth MacOS - Keepas
In der nächsten Anmeldung erscheint die Abfrage zum Token.
Antivirus
Ich installiere mir auch aus dem Paket-Zentrum ein Antivirus Programm.
Hier führe ich einmal den vollständigen Scan aus (sollte nicht allzu lange dauern, wenn das NAS noch ziemlich leer ist).
Danach erstelle ich einen programmierten Scan, einmal die Woche.
VPN
Ich nutze die Synology zwar nicht dafür, es lässt sich aber ein VPN einrichten. Dazu den VPN-Server aus dem Paket-Zentrum herunterladen.
Es erscheint eine Firewall Benachrichtigung. Ich möchte OpenVPN nutzen, also wähle ich nur den Port aus.
Wenn man nicht vorhat den VPN-Dienst aus dem Ausland zu nutzen, kann man die Regel anpassen.
Das sieht dann folgendermaßen aus.
Jetzt muss im neu installierten Programm der OpenVPN-Server aktiviert werden.
Im Router muss für die Synology DiskStation eine Freigabe angelegt werden.
Die Portfreigabe ist nicht nötig, wenn man in seinem Proxy Manager eine Domain auf den Port 1194 des NAS weiterleitet. Wie man einen Nginx-Proxy-Manager zum Laufen bekommt, ist später beschrieben.
Mit der Konfigurationsdatei aus der DiskStation ist es dann möglich eine Verbindung herzustellen. Sie muss dazu in das OpenVPN Programm des Clients (also Computer oder Smartphone) eingebunden werden.
USB Copy
Nun möchte ich grob auf ein paar Anwendungen eingehen. Als Erstes das vorinstallierte USB Copy. Es ist nur dann vorinstalliert, wenn am NAS wie an meiner DS220+ eine USB Copy Taste vorhanden ist.
Dafür erstelle ich einen neuen gemeinsamen Ordner.
Danach aktivere die USB Copy Taste und wähle den neu erstellten Ordner als Ziel aus.
Das war’s schon. Wenn jetzt ein USB-Stick in den Port neben der Taste gesteckt wird und der Kopiervorgang durch die Taste ausgelöst wird, werden alle Dateien des USB-Sticks auf das NAS in den usbcopy Ordner kopiert.
Cloud Sync
Mit der Cloud Sync kann man einige Daten mit Cloud Anbietern synchronisieren.
Zu Auswahl stehen einige Anbieter, darunter auch Box, Dropbox, Google Drive, Microsoft One Drive oder WebDAV.
Bei bidirektionalen Verbindung sollte man darauf achten, dass die Daten in der Cloud gelöscht werden, wenn sie auf dem NAS gelöscht werden.
Docker
Ich nutze für viele Dienste gerne Docker, deshalb möchte ich es auch auf der Synology DiskStation installieren.
Docker Installation
Im Paket-Zentrum befindet sich Docker. Zu beachten ist, dass es sich hierbei zum jetzigen Zeitpunkt um die Version 18.09.0 handelt.
Dabei ist die aktuellste Version gerade 20.10.6. Die Version 18.09 ist in einigen Monaten drei Jahre alt. Synology erzählt zwar, dass Docker für das Paket und die damit verbundenen Updates verantwortlich ist, ich bezweifle jedoch, dass es die gesamte Wahrheit ist. Ich verstehe auch, dass man nicht auf Version 20 upgraden kann, zu viele Dinge könnten nicht mehr kompatibel sein. Aber Version 18.09.9 wäre schon nett gewesen.
Man hat nun zwei Möglichkeiten. Eine Möglichkeit ist es sich über SSH die neuste Docker Engine zu installieren. Vorteil ist, dass man sich so auch Docker-Compose installieren kann. Nachteil ist, es gibt keine grafische Nutzeroberfläche, die Integration ist auch nicht ideal. Ich entscheide mich dafür, die alte Docker-Engine aus dem Paket-Zentrum zu installieren.
Docker Update
Für gewöhnlich sollte man weitere Docker Updates über das Paket-Zentrum erhalten. Sollte das mal nicht der Fall sein, ist es auch möglich sich die neuste Installationsdatei aus dem Synology-Archiv herunterzuladen und als “manuelle Installation” einzuspielen.
Portainer
Als Erstes möchte ich Portainer installieren. Damit lässt sich neuerdings Docker-Compose ausführen. Außerdem lässt sich damit auch ein neues MacVLAN Netzwerk erstellen.
Portainer Installation
Zur Installation von Portainer suche ich in der Registry nach Portainer und wähle das portainer/portainer-ce Image aus.
Im Ordner Docker erstelle ich den Unterordner portainer und den Unterordner davon namens data.
Portainer braucht Root-Zugriff, deshalb ist eine Installation über das Docker-Interface nicht möglich. Es geht aber über den Task-Manager.
Ich erstelle ein benutzerdefiniertes Skript. Es braucht nicht aktiviert zu sein (ich möchte keinen Zeitplan).
Im Zeitplan stelle ich ein vergangenes Datum ein.
In das Feld in den Aufgabeneinstellungen kommt folgender Code:
docker run -d -p 9000:9000 --name portainer --restart always -v /var/run/docker.sock:/var/run/docker.sock -v /volume1/docker/portainer/data:/data portainer/portainer-ce
Bei Bedarf kann man den Port 9000 mit einem anderen Port verknüpfen. Möchte man beispielsweise, dass Portainer unter Port 8765 erreichbar ist, ändert man den Code von 9000:9000
zu 8765:9000
. Befindet sich der Docker-Ordner nicht auf volume1, muss auch dieser Part angepasst werden.
Sobald die Aufgabe erstellt ist, drücken wir auf ausführen. Nach dem Ausführen passiert zunächst gar nichts. Im Docker-Interface sieht man aber einen neuen Container.
Wir rufen die Portainer Oberfläche auf, indem in einem Webbrowser die IP-Adresse des NAS mit dem oben angegebenen Port aufgerufen wird. Hier kann man sich einen Admin-Account erstellen.
Im nächsten Fenster Docker auswählen. Danach läuft Portainer.
Portainer Update
Irgendwann möchte man auch Portainer aktualisieren. Über die WebGUI ist das nicht möglich, man wird lediglich darauf hingewiesen, dass ein neues Update existiert. Auf Github kann man sich vergangene Veröffentlichungen ansehen.
Zunächst muss man das Image erneut herunterladen.
Anschließend muss man den laufenden Portainer Container stoppen und löschen.
Danach kann er wieder über die geplante Aufgabe gestartet werden.
Nginx Proxy Manager
Falls nicht bereits ein anderes Gerät als Reverse-Proxy dient, sollte man sich auf dem NAS ein Proxy einrichten. Persönlich nehme ich dafür einen Raspberry Pi (siehe anderer Blogpost) oder noch lieber einen Nuc, aber es ist auch auf dem Synology NAS möglich. Ich möchte den Nginx Proxy Manager benutzen.
Nginx Proxy Manager Vorbereitung
Zunächst erstelle ich einen neuen Freigabeordner.
Diesmal aktivere ich ausnahmsweise mal nicht die erweiterte Dateiintegrität.
Anschließend packe ich drei neue Ordner in diesen Freigabeordner.
volume
├── nginx_proxy_manager
│ ├── data
│ ├── db
│ ├── letsencrypt
Neues MacVLAN Netzwerk
Nginx Proxy Manager benötigt die Ports 80 und 443 zum Laufen, aber das NAS sperrt den Port 443 für eigene Bedürfnisse. In der Liste der Netzwerke füge ich ein neues Netzwerk hinzu.
Ich wähle einen beliebigen Namen und nutze macvlan als Treiber.
Danach muss ich das Netzwerk angeben, es sollte eth0 sein. Bei einem Synology NAS mit zwei LAN Ports, hat man auch noch das Netzwerk eth1, das man nutzen könnte.
Als Subnetz gebe ich den IP-Bereich meines Netzwerks an. Gateway ist die IP-Adresse meines Routers. In der IP-Range wähle ich in diesem Fall den Bereich von 152 bis 159. Das liegt außerhalb der DHCP-Range meines Routers, das heißt der kommt diesem Netzwerk nicht in die Quere.
IPv6 lasse ich unausgefüllt und erstelle das Netzwerk.
Nun füge ich noch ein Netzwerk hinzu. Diesmal nutze ich Creation statt Configuration.
Nginx Proxy Manager Installation
Unter “Stacks” erstelle ich einen neuen Stack.
Das tolle ist, dass Portainer endlich Docker Compose unterstützt. Also geben wir die Docker-Compose Anweisung ein.
version: "3.9"
### Networks ###
networks:
docker2:
name: docker2
internal:
external: false
### Services ###
services:
nginx-proxy-manager:
container_name: nginx-proxy-manager
image: jc21/nginx-proxy-manager
restart: always
networks:
- docker2
- internal
ports:
- "80:80"
- "443:443"
- "81:81"
environment:
DB_MYSQL_HOST: npm_db
DB_MYSQL_PORT: 3306
DB_MYSQL_USER: npm
DB_MYSQL_PASSWORD: npm
DB_MYSQL_NAME: npm
DISABLE_IPV6: "true"
volumes:
- /volume1/nginx_proxy_manager/data:/data
- /volume1/nginx_proxy_manager/letsencrypt:/etc/letsencrypt
depends_on:
- npm_db
npm_db:
container_name: npm_db
image: mariadb
# image: yobasystems/alpine-mariadb:10.4.17-arm32v7
# Das untere Image bei einer ARM-CPU benutzen
restart: always
networks:
- internal
environment:
MYSQL_ROOT_PASSWORD: npm
MYSQL_DATABASE: npm
MYSQL_USER: npm
MYSQL_PASSWORD: npm
volumes:
- /volume1/nginx_proxy_manager/db:/var/lib/mysql
Angepasst werden müsste der Name des Netzwerks, falls ein anderer genutzt wurde. Angepasst werden kann das Passwort. Auch das Volume muss an drei Stellen angepasst werden, wenn man es anders genannt hat. Jetzt muss man etwas warten.
Ich drücke auf nginx-proxy-manager, um zu sehen, welche IP-Adresse er hat. Dies steht ganz unten.
Diese IP-Adresse inklusive Port 81 besuche ich mit meinem Browser und gelange auf diese Seite (also bei mir 192.168.123.152:81).
Hier kann ich mich mit admin@example.com und changeme als Passwort anmelden. Die Anmeldedaten sollten auch gleich geändert werden. Den Zugriff auf die Ports 80 und 443 muss man in der Synology-Firewall erlauben, wenn man sie eingerichtet hat. Nun kann man im Router die Ports 80 und 443 (am besten nicht 81!) für diese IP-Adresse freigeben und hat damit seinen nginx-proxy-manager eingerichtet.
Fehlerbehebung
Was tun, wenn die Verbindung über die Weboberfläche nicht hergestellt werden kann? Zunächst einmal kann man in die Logs der beiden Container schauen, ob dort ein Fehler ersichtlich ist.
Anschließend kann man versuchen die Docker-Compose Datei anzupassen und für Datenbankbenutzer, Datanbankname und Datenbankpasswort wieder den Standardwert (“npm”) zu nehmen. Der DB-Host bleibt aber weiterhin bei “npm_db”, wenn man ihn nicht anders genannt hat.
Dann hat man noch die Möglichkeit, andere Images zu nehmen. Wichtig ist es hier, dass man alle Ordner im Verzeichnis nginx-proxy-manager löschen und erneut erstellen sollte, um sicherzugehen, dass dort keine Reste sind, die man nicht mitnehmen möchte, selbst wenn die Ordner leer zu sein scheinen. Das gilt insbesondere für den Datenbank Ordner.
[...]
services:
nginx-proxy-manager:
container_name: nginx-proxy-manager
image: jc21/nginx-proxy-manager
# image: jc21/nginx-proxy-manager:2.9.14
# image: jc21/nginx-proxy-manager:2.8
[...]
npm_db:
container_name: npm_db
image: mariadb
# image: jc21/nginx-proxy-manager
# image: mariadb:10.6
# image: yobasystems/alpine-mariadb
# image: linuxserver/mariadb
Moments
Ab dem 01. Juni gibt es bei Google Photos keine Möglichkeit mehr seine Bilder vom Handy hochzuladen, ohne dass diese auf den Speicherplatz angerechnet werden. Das ist schade, ein Ersatz dafür könnte Moments sein.
Bei der Installation werden noch ein paar weitere Pakete installiert. Danach muss man sich die Smartphone-App installieren.
Synology Moments
Easy to refresh your special moments in life.
In der App kann entweder die lokale IP-Adresse der DiskStation eingegeben werden oder man muss in seinem Proxy Manager eine auf das Heimnetz geroutete Domain an den eingestellten Port weiterleiten. Dann kann man auf Moments auch von unterwegs aus zugreifen.
Die Bilder vom Smartphone werden anschließend automatisch mit dem NAS synchronisiert.
Fertig
Das NAS läuft jetzt. Wenn Fragen offen geblieben sind oder weitere Erläuterungen (auch zu anderen Diensten) folgen sollen, freue ich mich über Kommentare. 😀