Der Cloudflare Tunnel ermöglicht einen sicheren Fernzugriff auf lokale Dienste über das Internet, ohne dass Port-Forwarding oder eine öffentliche IP-Adresse erforderlich sind. Die Verbindung wird dabei vom lokalen System zu Cloudflare aufgebaut. Dadurch können auch Netzwerke hinter CG-NAT oder restriktiven Internetanbindungen sicher erreichbar gemacht werden.
Hinweise: Cloudflare Tunnel ist nur ab Core 2 oder höher verfügbar.
Hinweis: Antcas Control unterstützt die Anbindung über einen eigenen Tunnel und kann die Visualisierung auch ohne Konfiguration öffentlich bereitstellen.
Für die Nutzung wird ein Cloudflare-Account mit einer verwalteten Domain benötigt. Die Verwaltung erfolgt automatisch über die Cloudflare API. Der verwendete API-Token benötigt entsprechende Berechtigungen. Siehe weiter unten unter Konfiguration.
Befindet sich der Server hinter einer restriktiven Firewall, muss sichergestellt werden, dass ausgehende Verbindungen zu Cloudflare möglich sind. Insbesondere muss der Zugriff auf Port 7844 erlaubt sein. Weitere Informationen entnehmen Sie unter dem Link:
https://developers.cloudflare.com/cloudflare-one/networks/connectors/cloudflare-tunnel/troubleshoot-tunnels/connectivity-prechecks/
Der Cloudflare Tunnel baut eine ausgehende, verschlüsselte Verbindung zu Cloudflare auf. Externe Benutzer greifen anschliessend über die konfigurierte Domain auf die Visualisierung oder andren Anwendung zu. Die Verbindung wird dabei über die Cloudflare-Infrastruktur vermittelt, ohne dass eingehende Ports am Router geöffnet werden müssen.
Der Port der Anwendung wird der virtuellen lokalen Netzwerkschnittstelle zugewiesen und wird über den Tunnel sicher veröffentlicht.
Es stehen verschiedene Konfigurationsmöglichkeiten zur Verfügung. Die nachfolgenden Kapitel erläutern das jeweilige Vorgehen für die verschiedenen Konfigurationen und Anwendungsfälle.
Bei dieser Konfiguration wird die Tunnelkonfiguration in Antcas Control gespeichert und anschliessend mit der Cloud synchronisiert. Der Vorteil dieser Variante besteht darin, dass sich der Tunnel einfach konfigurieren und verwalten lässt. Zu beachten ist jedoch, dass alle Benutzer mit Berechtigung zur Konfiguration des Servers auch Änderungen an der Tunnelkonfiguration in der Cloud vornehmen können.
Erstellen Sie ein neues API-Token im Benutzerprofil in Ihrem Cloudflare-Account. Diese braucht zwingend folgende Berechtigungen:
| Typ | Gegenstand | Berechtigung |
|---|---|---|
| Account | Cloudflare Tunnel | Edit |
| Zone | DNS | Edit |
Hinweis: Eine DNS-Zone muss mindestens dem Account zugewiesen sein, damit das Konto ermittelt werden kann.
Danach wird ein neuer Cloudflare Tunnel in der
Infrastruktur unter
Server
Netzwerk
VPN und Tunnel hinzugefügt. Jeder Tunnel erstellt eine virtuelle Netzwerkschnittstelle wie z.B.
cf-tunnel0. Es wird empfohlen zuerst die Konfiguration vom Tunnel abzuschliessen und danach die Anwendungen zu konfigurieren.
Achtung: Wird ein bestehender Tunnel ausgewählt, so wird möglicherweise die Authentifizierung des Tunnels überschrieben, um eine Verbindung herzustellen. Antcas Control unterstützt jeweils einen Tunnel mit einer gleichzeitigen Verbindung zu Cloudflare.
Für die automatische Konfiguration wird ein Cloudflare API-Token benötigt. Mit diesem kann Antcas Control die benötigten DNS-Einträge und Tunnel-Konfigurationen automatisch abrufen, erstellen und verwalten. Die Beschreibung, wie ein API-Token erstellt werden kann finden Sie in der Cloudflare Hilfe unter:
https://developers.cloudflare.com/fundamentals/api/get-started/create-token/
Nachdem das API-Token validiert wurde, kann das Konto und der Tunnel ausgewählt werden. Es ist möglich einen neuen Tunnel zu erstellen, dieser wird dann der Name des Server plus der Name der Schnittstelle bekommen. Z.B. Bürogebäude - cf-tunnel0.
Hinweis: Die Konfiguration des Tunnels findet komplett automatisch via API statt. Stellen Sie sicher, dass der Server bei der Konfiguration eine Verbindung zu Cloudflare herstellen kann.
Wurde der Tunnel erstellt, sollten Sie alle Visualisierungen, die via Tunnel einen Zugriff erhalten sollten, der Netzwerkschnittstelle zuweisen. Dann können diese als Anwendungen zum Tunnel hinzugefügt werden. Die
Anwendungen befinden Sie eine Ebene höher als der konfigurierte
Tunnel.
Wählen Sie im in der Konfiguration die Domäne aus und vergeben Sie einen Namen für die Subdomäne. Anschliessend wählen Sie den Endpunkt aus.
Hinweis: Wurde der Name bereits für einen anderen Tunnel verwendet, so wird dieser nicht zugewiesen und die Verbindung wird wie bisher aufgebaut. Wenn der Name geändert wird, löscht Antcas Control die Subdomäne, falls die ID des Tunnels von Antcas verwaltet wurde.
Eine Alternative zur lokal verwalteten Konfiguration ist die Zero Trust-Konfiguration. Dabei erfolgt die Konfiguration in der Cloudflare-Konsole und wird anschliessend mit Antcas Control synchronisiert. Der Vorteil dieser Variante besteht darin, dass über Antcas Control kein Zugriff auf die Cloudflare-Konfiguration möglich ist.
Für diese Konfiguration muss der Schnittstelle nicht zwingend ein Port zugewiesen werden. Als Endpunkt kann jede beliebige Adresse im Netzwerk verwendet werden. Dadurch kann beispielsweise der Port der Hauptschnittstelle oder auch ein anderer Dienst im Netzwerk freigegeben werden. Abweichend von der üblichen Konfiguration kann jedoch localhost nicht als Endpunkt verwendet werden.
Erfolgt die Verbindung unverschlüsselt, muss in der Cloudflare-Konsole die Option noTLSVerify auf TRUE gesetzt werden. Eine unverschlüsselte Verbindung zu einem Dienst ausserhalb des Servers wird jedoch aus Sicherheitsgründen nicht empfohlen.
Für die Konfiguration wird ein neuer Cloudflare Tunnel in der
Infrastruktur unter
Server
Netzwerk
VPN und Tunnel hinzugefügt. Jeder Tunnel erstellt eine virtuelle Netzwerkschnittstelle wie z.B.
cf-tunnel0. Für die Einrichtung wird lediglich der Token des Zero Trust-Tunnels benötigt. Dieser kann direkt aus der Cloudflare-Konsole kopiert und eingefügt werden. Enthält der eingefügte Text zusätzlich den vollständigen Installationsbefehl, wird dieser automatisch entfernt, sodass nur der Token gespeichert wird.