Netzwerkkonfiguration

Die einzige zwingende Voraussetzung zur Verwendung von Cosmos Cloud ist eine Verbindung auf den Netzwerkanschluss, entweder direkt mit einem Ethernet-Kabel, oder über einen Netzwerkswitch und/oder WLAN-Accesspoint im selben Netzwerk.

Der Zugriff auf die Cosmos Cloud Benutzeroberfläche ist Webbasiert und ist über 3x Varianten möglich:

  1. private IP-Adresse ( z.B. 192.168.0.11, Wikipedia: Private Adressbereiche )
  2. private Domäne ( mDNS, cosmos-setup.local, Wikipedia: Multicast DNS )
  3. öffentliche Domäne ( FQDN, (app[1..n].)domain.tld, Wikipedia: Fully Qualified Domain Name (FQDN) )

Für die volle Funktionalität empfehlen wir die Verwendung einer öffentlichen Domäne (FQDN). Die Einrichtung einer FQDN mit desec.io ist weiter unten beschrieben.

Sollte dies nicht möglich sein, so können Sie auch auf eine private Domäne (mDNS) oder auf die private IP-Adresse zurückgreifen. Dies hat die Einschränkung, dass man keine öffentlichen SSL-Zertifikate via Let’s-Encrypt verwenden kann. Das bedeutet, dass einzelne Funktionen nicht zur Verfügung stehen oder zusätzliche Konfiguration nötig ist.

lokale IP-Adresse reservieren

Um den Zugriff auf Cosmos Cloud langfristig zu gewährleisten, stellen Sie sicher, dass sich die IP-Adresse Ihrer Cosmos Cloud nicht verändert.

Falls Sie Cosmos Cloud als Router verwenden, so ist das bereits automatisch konfiguriert. Andernfalls empfehlen wir, eine DHCP-Adressreservation auf dem vorhandenen DHCP-Server einzurichten. Normalerweise läuft der DHCP-Server im vorhandenen Router. Lesen Sie dazu die passende Dokumentation zu Ihrem Router.

Alternativ: statische IP-Adresse verwenden

Alternativ können Sie in Ihrer Cosmos Cloud die statische IP-Adresse ändern. Wir raten davon ab, statische IP-Adressen zu verwenden. Diese Methode ist über die gesamte Betriebsdauer am aufwändigsten.

Sofern Sie Cosmos Cloud noch nicht konfiguriert haben, erreichen Sie OpenWrt via http://<IP-Adresse>:8080. Wenn sich Ihr Netzwerk im Adressbereich 192.168.0.0/24 befindet, erreichen Sie OpenWrt standardmässig unter http://192.168.0.11:8080

Gehen Sie im Menu auf Netzwerk->Netzwerkschnittstellen die. Klicken Sie bei der Netzwerkschnittstelle lan11 auf Bearbeitung und geben Sie die gewünschte IP-Adresse ein. Die Adresse muss sich im lokalen Netzbereich befinden, der verwendet wird. Bei einem üblichen /24-Netz entspricht das z.B. einer beliebigen Adresse von 192.168.0.2 bis 192.168.0.253. Ab Werk ist die Adresse 192.168.0.11 eingerichtet. Folgend ein Video zur Veränderung der statischen IP-Adresse. Sobald Sie die Adresse geändert haben, ist Cosmos unter der neuen Adresse erreichbar.

Falls Cosmos Cloud bereits konfiguriert ist

Sollten Sie Cosmos Cloud bereits konfiguriert haben und mit der IP-Adresse auf Cosmos-UI zugreifen, müssen Sie unbedingt die Einstellung „Unsicheren Zugriff über lokale IP zulassen“ unter Konfiguration->HTTP aktivieren. Ansonsten besteht die Gefahr, dass Sie sich aussperren und keinen Zugriff mehr auf Cosmos-UI erhalten.

Öffnen Sie nun die App OpenWrt und folgen die der Anleitung wie im vorherigen Abschnitt.

 

Falls die IP-Adresse geändert hat, müssen Sie die neue IP-Adresse auch bei den DNS-Servern und/oder in der Firewall (Port-Forwarding) aktualisieren (falls eingerichtet).

Öffentliche Domäne (FQDN) mit öffentlichem SSL-Zertifikat für HTTPS (Let’s Encrypt)

Wir empfehlen Ihnen, Cosmos Cloud mit einer öffentlichen Domäne (FQDN)einzurichten. Damit haben Sie den bestmöglichen Komfort und Funktionsumfang.

Sie können sich bei einem beliebigen Registrar eine Domäne kaufen und einen von lego unterstützten Nameserver einrichten, wir empfehlen desec.io. Alternativ können Sie direkt bei desec.io eine kostenlose dynDNS-Domäne (dedyn.io) einrichten.

desec.io

Rufen Sie https://desec.io in Ihrem Browser auf und erstellen Sie einen Account. Wählen Sie hier entweder dynDNS domain für eine kostenlose Domäne die auf dedyn.io endet, oder wählen Sie Managed domain, falls Sie eine bereits gekaufte Domäne besitzen und bei desec verwalten lassen möchten.

Nachdem Sie sich erfolgreich eine Adresse erstellt haben und Ihre E-Mail-Adresse bestätigt haben, können Sie sich ein Passwort setzen:

Vergessen Sie nicht, sich bei desec.io mit einer kleiner Spende für den kostenlosen Dienst zu bedanken:

Loggen Sie sich nun in Ihrem Account ein und öffnen Sie die Konfiguration Ihrer Domäne. Erstellen Sie einen neuen A-Eintrag, und geben Sie da die IP-Adresse Ihrer Cosmos Cloud im Feld Ipv4 address ein, und klicken Sie auf „SAVE“:

Erstellen Sie einen neuen CNAME-Eintrag und geben Sie als Subname einen Stern * ein. Als Target domain name geben Sie Ihre Domäne mit abschliessendem Punkt ein.

zuletzt können Sie sich unter TOKEN MANAGEMENT ein Token mit Berechtigung zum erstellen und löschen von Domänen erstellen. Kopieren Sie dieses Token für die spätere Einrichtung von Cosmos Cloud.

andere Anbieter

Selbstverständlich können Sie auch einen anderen Nameserver als desec.io verwenden. Je nach Anbieter benötigen Sie dafür eine etwas anderen Prozess. Konsultieren Sie dafür die entsprechenden Dokumentationen Ihres DNS-Anbieters, Cosmos Cloud und LEGO: https://go-acme.github.io/lego/dns/

Fernzugriff (Zugriff von ausserhalb des lokalen Netzwerks)

Standardmässig hat man auf Cosmos Cloud Zugriff aus dem gleichen bzw. lokalen Netzwerk. Den Zugriff von ausserhalb des lokalen Netzwerkes, auch genannt Fernzugriff, ist nicht möglich und muss eingerichtet werden. Abhängig davon, ob das lokale Netzwerk eine Öffentliche IP hat, oder über CG-NAT (Carrier Grade NAT) im Internet angeschlossen ist kann man Port Forwarding nutzen oder nicht. Die meisten Internetanschlüsse für Konsumenten verwenden heutzutage CG-NAT und haben damit keine öffentliche IP mehr. Die Einzige Zugriffsmöglichkeit ist damit über ein Constellation-Netzwerk.

öffentliche IP vorhanden:

  • Constellation (VPN)
  • Port Forwarding

keine öffentliche IP vorhanden (CG-NAT):

  • Constellation (VPN) (Ein Constellation Netzwerk braucht mindestens 1x Lighthouse mit öffentlicher IP + Port Forwarding)

Constellation (VPN)

Constellation ist ein Overlay-Network auf modernster VPN-Technologien. Constellation ein virtuelles Netzwerk, wo jeder Client direkt mit anderen Clients oder Servern kommunizieren kann. Die Kommunikation ist dabei standortunabhängig und immer verschlüsselt (auch z.B. bei unverschlüsseltem HTTP). Constellation ist damit sehr flexibel und der sicherste Weg, um auf eine Cosmos Cloud zuzugreifen.

Ein Constellation Netzwerk kann dabei eine beliebige Anzahl von Cosmos Cloud Servern und Cosmos Cloud Clients beinhalten. Wichtig zu berücksichtigen ist aber, dass mind. 1x Cosmos Cloud eine öffentliche IP hat und dafür Port Forwarding für UDP-Port 4242 konfiguriert hat. Dieser Server ist das Constellation Lighthouse und optional auch Constellation Relay. Um die Ausfallsicherheit zu erhöhen, kann man auch mehrere Lighthouses und Relays konfigurieren.

Port Forwarding

Port Forwarding ist eine Methode, wie Router Anfragen aus dem Internet an einen Client im lokalen Netzwerk weiterleiten können. Es öffnet einen Port dem Internet und ist damit mit höchster Vorsicht zu behandeln. z.B. Wenn der Router Anfragen auf UDP-Port 4242 an Cosmos Cloud weiterleitet, ist nun Cosmos Cloud dafür zuständig, dass auf diesem Port keine ungeschützten Daten oder Dienste aktiv sind. Auf dem UDP-Port 4242 läuft der Dienst Constellation Lighthouse und verarbeitet die Anfragen aus dem Internet. Cosmos Cloud ignoriert dabei alle nicht authentifizierten Anfragen und antwortet nur auf authorisierte Anfragen von Constellation Clients. Der Dienst stellt damit sicher, dass dieser offene Port nicht böswillig ausgenutzt werden kann.

Über Port Forwarding von TCP-Port 80 + 443 an Cosmos Cloud macht man Web-Dienste von Cosmos Cloud und allen Apps auf Cosmos Cloud im Internet verfügbar. Dies ist ein massives Sicherheitsrisiko und bedarf sorgfältiger Konfiguration. Wir raten in fast jedem Fall davon ab. Einzig bei öffentlich erreichbaren Diensten, wie z.B. eine öffentliche WordPress-Website, macht das Sinn. In allen anderen Fällen ist dies ein vermeidbares Sicherheitsrisiko.

Bitte nicht vergessen: Sollte man den Zugriff auf Cosmos Cloud über Port Forwarding verwenden, so muss man dafür den DNS-Eintrag im öffentlichen Nameserver anpassen. Anstatt die lokale IP muss man neu die WAN-IP bzw. die IP-Adresse des Internetanschlusses eintragen.

wechselnde IP-Adresse (Dyndns)

Der Zugriff auf Cosmos Cloud setzt voraus, dass sich die IP nicht ändert. Das gilt für die lokale IP und auch die WAN-IP. Die meisten Internetanschlüsse haben aber standardmässig keine statische IP. Bei einigen Anbietern kann man eine statische IP anfragen oder bestellen. Ist dies nicht möglich, so kann man einen Dienst einsetzen, der die IP regelmässig prüft und bei geänderter IP die DNS-Einträge beim Nameserver (desec.io) anpasst. Wir haben dafür eine App im Cosmos Cloud App Store erstellt. ddns-updater:

Bei der Installation der App muss man die Domäne angeben, die bei desec den A-Eintrag auf die Cosmos Cloud enthält sowie das Token mit der nötigen Berechtigung. Falls Sie das Token nicht mehr zur Hand haben, können Sie dieses in Cosmos Cloud bei den Einstellungen unter dem Menu HTTPS rauskopieren. Alternativ erstellen Sie bei desec.io ein neues Token.