Methode für den externen Zugriff auswählen
SetFN SpaceBuilder kann direkt nach der Installation im selben Netzwerk sofort verwendet werden. Um auch von außerhalb des Büros oder über ein Mobilfunknetz zuzugreifen, müssen Sie einen sicheren Verbindungsweg zwischen dem Server und dem externen Internet einrichten.
Auf den ersten Blick wirkt das kompliziert, aber das Ziel ist einfach.
https://space.example.com
↓
Verbindungsmethode für den externen Zugriff
↓
http://localhost:8510
Mit Cloudflare Tunnel lässt sich diese Verbindung vergleichsweise einfach einrichten. Sie müssen den Port des Servers nicht direkt im Internet freigeben, und auch das HTTPS-Zertifikat und die Domainanbindung übernimmt Cloudflare.
Prüfen Sie zuerst, ob Sie externen Zugriff benötigen
Wenn Sie SetFN nur innerhalb desselben Büros oder WLANs verwenden, ist keine Einrichtung des externen Zugriffs erforderlich. Greifen Sie über die interne IP-Adresse zu, wie unter Zugriffsadresse des Space ermitteln beschrieben.
In den folgenden Fällen ist eine Einrichtung des externen Zugriffs erforderlich.
- Zugriff auf den Space von zu Hause oder von unterwegs
- Zugriff über mobile Daten
- Weitergabe von Freigabelinks an externe Partner oder Kunden
- Nutzung eines Space an mehreren Standorten oder in mehreren Netzwerken
Welche Methode sollten Sie wählen?
| Methode | Empfohlen für | Vorteile | Selbst zu verwalten |
|---|---|---|---|
| Cloudflare Tunnel (empfohlen) | Benutzer, die den externen Zugriff zum ersten Mal einrichten; Umgebungen ohne feste öffentliche IP | Keine Portfreigabe am Router nötig, IP des Ursprungsservers bleibt verborgen, einfache HTTPS- und Domainanbindung | Cloudflare-Konto, Domain, cloudflared-Dienst |
| Caddy-Reverse-Proxy | Benutzer, die einen eigenen Server betreiben und die Konfiguration einfach halten möchten | Einfache Konfiguration, automatische Ausstellung und Erneuerung von HTTPS-Zertifikaten | DNS, öffentliche IP, Firewall, Portweiterleitung, Caddy |
| NGINX-Reverse-Proxy | Organisationen mit bestehender NGINX-Infrastruktur oder Bedarf an feingranularer Steuerung | Hohe Flexibilität bei der Konfiguration, einfache Integration in bestehende Webinfrastruktur | DNS, Zertifikate, Firewall, Portweiterleitung, NGINX |
| Portweiterleitung am Router | Testumgebungen oder Benutzer, die ihr Netzwerk selbst verwalten können | Direkte Verbindung ohne separaten Tunneldienst | Öffentliche IP, Router, Firewall, HTTPS, Sicherheitsupdates |
| VPN/privates Netzwerk | Organisationen, die den Zugriff nicht öffentlich, sondern nur ihren Mitgliedern erlauben möchten | Der Dienst wird nicht im öffentlichen Internet freigegeben | Konfiguration von VPN-Server und Endgeräten der Benutzer |
Tunneling und Reverse-Proxying einfach erklärt
Tunneling
Ein im Server laufender Connector baut zuerst eine sichere Verbindung zu einem externen Dienst auf. Externe Anfragen erreichen den Server, indem sie diese Verbindung in umgekehrter Richtung durchlaufen.
Bei Cloudflare Tunnel stellt cloudflared eine ausgehende Verbindung vom Server zu Cloudflare her. In einer typischen Umgebung müssen Sie daher die Ports 80, 443 und 8510 am Router nicht nach außen öffnen.
Benutzer → Cloudflare → bereits verbundener Tunnel → SetFN :8510
Reverse-Proxying
Caddy oder NGINX nimmt externe Anfragen zuerst entgegen und leitet sie an den internen SetFN-Dienst weiter. Benutzer greifen über https://space.example.com zu, ohne den Port 8510 kennen zu müssen.
Benutzer → Caddy oder NGINX :443 → SetFN :8510
Ein Reverse-Proxy hat den Vorteil, dass Funktionen wie HTTPS-Terminierung, Domain-Routing, Zugriffsprotokolle und Anfragelimits an einer Stelle verwaltet werden können.
Empfohlene Methode: Cloudflare Tunnel
Cloudflare Tunnel verbindet einen internen Dienst mit einer öffentlichen Domain, ohne dass der Ursprungsserver eine öffentlich routbare IP-Adresse benötigt. Da cloudflared die Verbindung zum Cloudflare-Netzwerk aufbaut, werden auch mögliche Umgehungswege für den direkten Zugriff auf den Ursprungsserver reduziert.
Bei der Ersteinrichtung können Sie Folgendes erwarten.
- Keine Portweiterleitung in der Verwaltungsoberfläche des Routers erforderlich
- Vergleichsweise geringe Abhängigkeit von dynamischen öffentlichen IPs oder den Gegebenheiten des Internetanbieters
- Verwendung einer Adresse der Form
https://space.example.com - Geringerer Aufwand für die Ausstellung und Erneuerung externer Zertifikate
- Bei Bedarf Beschränkung auf zugelassene Benutzer oder E-Mail-Domains mit Cloudflare Access
- Ein Connector kann mehrere interne Webdienste über verschiedene Subdomains anbinden
Ablauf der Cloudflare-Tunnel-Einrichtung
- Verbinden Sie die gewünschte Domain mit Cloudflare.
- Erstellen Sie im Cloudflare-Dashboard einen Tunnel.
- Installieren Sie
cloudflaredauf dem SpaceBuilder-Server. - Starten Sie den Connector mit dem im Dashboard angezeigten Befehl.
- Verknüpfen Sie in der Published application die Domain mit der SetFN-Adresse.
- Fügen Sie bei Bedarf eine Cloudflare-Access-Richtlinie hinzu.
- Prüfen Sie den Zugriff aus einem externen Netzwerk.
Verwenden Sie für die Service URL der Published application die folgenden Werte.
| Feld | Beispiel |
|---|---|
| Public hostname | space.example.com |
| Service type | HTTP |
| Service URL | http://localhost:8510 |
Wenn Sie den SetFN-Port geändert haben, geben Sie statt 8510 den tatsächlichen Dienstport ein.
Offizielle Cloudflare-Anleitungen
Die Cloudflare-Oberfläche und die Installationsbefehle können sich ändern. Ziehen Sie bei der Einrichtung daher auch die folgende offizielle Dokumentation hinzu.
- Überblick über Cloudflare Tunnel
- Tunnel im Dashboard erstellen
cloudflaredje nach Betriebssystem installieren- Lokalen Dienst mit einer öffentlichen Domain verbinden
- Benutzerauthentifizierung mit Cloudflare Access hinzufügen
Eigenen Reverse-Proxy betreiben
Wenn Sie bereits eine öffentliche IP und eine Serverinfrastruktur betreiben, können Sie die Verbindung direkt mit Caddy oder NGINX herstellen.
Caddy
Caddy kann die Ausstellung und Erneuerung von HTTPS-Zertifikaten automatisch übernehmen, sobald der DNS-Eintrag der Domain auf den Server zeigt und die Ports 80 und 443 den Server erreichen. Das macht es für kleine, selbst betriebene Umgebungen geeignet.
space.example.com {
reverse_proxy 127.0.0.1:8510
}
Details zur Konfiguration finden Sie im Caddy-Schnellstart für Reverse-Proxys.
NGINX
Wenn Sie bereits NGINX verwenden, können Sie HTTPS-Anfragen an den lokalen Port von SetFN weiterleiten.
server {
listen 443 ssl;
server_name space.example.com;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://127.0.0.1:8510;
}
}
Das obige Beispiel zeigt nur die Grundstruktur des Proxys. Im Produktivbetrieb sollten Sie zusätzlich Zertifikate, WebSocket, Upload-Größe, Zeitlimits und Zugriffsprotokollierung berücksichtigen. Weitere Informationen finden Sie im offiziellen NGINX-Leitfaden für Reverse-Proxys.
Portweiterleitung am Router
Bei dieser Methode leitet der Router die externen Ports 80 und 443 an den Reverse-Proxy-Server weiter. Anstatt den Port 8510 von SetFN direkt im Internet freizugeben, konfigurieren Sie Caddy oder NGINX so, dass HTTPS-Anfragen auf Port 443 entgegengenommen und intern an 8510 weitergeleitet werden.
Die folgenden Voraussetzungen müssen erfüllt sein.
- Der Internetanschluss verfügt über eine von außen erreichbare öffentliche IP
- Sie haben Administratorrechte für den Router
- Feste IP oder DHCP-Reservierung, damit sich die interne IP des Servers nicht ändert
- Der DNS-Eintrag zeigt auf die öffentliche IP
- In der Server-Firewall sind nur die benötigten Ports freigegeben
- Ausstellung und automatische Erneuerung von HTTPS-Zertifikaten sind eingerichtet
Bei Anschlüssen, bei denen der Internetanbieter CGNAT einsetzt, kann die am Router angezeigte WAN-IP von der tatsächlichen öffentlichen IP abweichen, sodass die Portweiterleitung nicht funktioniert. Verwenden Sie in diesem Fall Cloudflare Tunnel oder eine VPN-Lösung.
Domain vorbereiten
Wenn Sie eine Firmendomain haben, empfiehlt sich eine Subdomain wie space.example.com. Haben Sie keine Domain, können Sie eine bei einem Domain-Registrar erwerben.
Für Cloudflare Tunnel muss die Domain als aktive Zone mit Ihrem Cloudflare-Konto verbunden sein. Wenn Sie einen eigenen Reverse-Proxy verwenden, richten Sie den DNS-Eintrag vom Typ A oder AAAA auf die öffentliche IP des Servers.
Zugriff prüfen
Prüfen Sie nach der Einrichtung in der folgenden Reihenfolge.
- Zugriff auf
http://localhost:8510vom Server aus - Zugriff auf
http://<Server-IP>:8510aus demselben Netzwerk - HTTPS-Zugriff über die Domain
- Zugriff über mobile Daten bei ausgeschaltetem WLAN
- Prüfung von Anmeldung, Datei-Upload sowie Echtzeitbenachrichtigungen oder Chat
Schlägt bereits der interne Zugriff fehl, prüfen Sie zuerst den Status des SetFN-Dienstes. Funktioniert der interne Zugriff, aber nur der Zugriff über die Domain nicht, prüfen Sie in dieser Reihenfolge: Tunnel, DNS, Reverse-Proxy, Firewall.
Checkliste für den Betrieb
- Lange und eindeutige Passwörter für Administratoren und Benutzer verwenden
- Nicht benötigte Konten und Freigabelinks deaktivieren
- Tunnel-Connector oder Reverse-Proxy als Systemdienst registrieren
- Connector, Betriebssystem und Proxy regelmäßig aktualisieren
- Ablauf der HTTPS-Zertifikate und DNS-Status prüfen
- Protokolle für externe Zugriffe und Administratoraktivitäten prüfen
- Betriebsablauf vorbereiten, damit bei einer Störung über die interne Adresse zugegriffen werden kann