Cloudflare Tunnel

De Cloudflare Tunnel maakt een veilige externe toegang tot lokale diensten via het internet mogelijk, zonder dat poortforwarding of een openbaar IP-adres nodig is. De verbinding wordt vanaf het lokale systeem naar Cloudflare opgezet. Hierdoor kunnen ook netwerken achter CG-NAT of restrictieve internetverbindingen veilig bereikbaar worden gemaakt.

Opmerkingen: Cloudflare Tunnel is alleen beschikbaar vanaf Core 2 of hoger.

Opmerking: Antcas Control ondersteunt de verbinding via een eigen Tunnel en kan de visualisatie ook zonder configuratie openbaar beschikbaar stellen.

Vereisten

Voor het gebruik is een Cloudflare-account met een beheerd domein nodig. Het beheer gebeurt automatisch via de Cloudflare API. De gebruikte API-token heeft de juiste machtigingen nodig. Zie hieronder onder Configuratie.

Als de server achter een restrictieve firewall staat, moet ervoor gezorgd worden dat uitgaande verbindingen naar Cloudflare mogelijk zijn. In het bijzonder moet toegang tot poort 7844 toegestaan zijn. Meer informatie vindt u onder de link:
https://developers.cloudflare.com/cloudflare-one/networks/connectors/cloudflare-tunnel/troubleshoot-tunnels/connectivity-prechecks/

Werking

De Cloudflare Tunnel zet een uitgaande, versleutelde verbinding op met Cloudflare. Externe gebruikers hebben vervolgens toegang tot de visualisatie of andere applicaties via het geconfigureerde domein. De verbinding wordt hierbij via de Cloudflare-infrastructuur beheerd, zonder dat inkomende poorten op de router hoeven te worden geopend.

De poort van de applicatie wordt toegewezen aan de virtuele lokale netwerkinterface en wordt veilig gepubliceerd via de tunnel.

Configuratie

Er zijn verschillende configuratiemogelijkheden beschikbaar. De volgende hoofdstukken leggen het respectievelijke procedure uit voor de verschillende configuraties en toepassingsgevallen.

Lokaal beheerde configuratie

Bij deze configuratie wordt de tunnelconfiguratie in Antcas Control opgeslagen en vervolgens gesynchroniseerd met de cloud. Het voordeel van deze variant is dat de tunnel eenvoudig geconfigureerd en beheerd kan worden. Let er echter op dat alle gebruikers met toegang tot de serverconfiguratie ook wijzigingen aan de tunnelconfiguratie in de cloud kunnen aanbrengen.

Maak een nieuw API-token aan in het gebruikersprofiel van uw Cloudflare-account. Dit heeft verplicht de volgende machtigingen:

Type Onderwerp Machtiging
Account Cloudflare Tunnel Bewerken
Zone DNS Bewerken

Opmerking: Een DNS-zone moet minimaal aan het account zijn toegewezen, zodat het account kan worden bepaald.

Vervolgens wordt een nieuwe Cloudflare Tunnel toegevoegd in de Infrastructuur onder Server Netwerk VPN en tunnels. Elke tunnel maakt een virtuele netwerkinterface zoals bijvoorbeeld cf-tunnel0. Het wordt aanbevolen om eerst de configuratie van de tunnel af te ronden en vervolgens de applicaties te configureren.

Let op: Als een bestaande tunnel wordt geselecteerd, kan mogelijk de authenticatie van de tunnel worden overschreven om een verbinding tot stand te brengen. Antcas Control ondersteunt telkens één tunnel met een gelijktijdige verbinding naar Cloudflare.

Voor de automatische configuratie is een Cloudflare API-token nodig. Hiermee kan Antcas Control automatisch de benodigde DNS-instellingen en tunnelconfiguraties ophalen, aanmaken en beheren. De beschrijving van hoe een API-token aangemaakt kan worden vindt u in de Cloudflare Help onder:
https://developers.cloudflare.com/fundamentals/api/get-started/create-token/

Na het valideren van de API-token kan het account en de tunnel worden geselecteerd. Het is mogelijk om een nieuwe tunnel aan te maken, deze krijgt dan de naam van de server plus de naam van de interface. Bijvoorbeeld Kantoorgebouw - cf-tunnel0.

Opmerking: De configuratie van de tunnel gebeurt volledig automatisch via API. Zorg ervoor dat de server tijdens de configuratie een verbinding met Cloudflare kan maken.

Als de tunnel is aangemaakt, moet u alle visualisaties die toegang moeten krijgen via de tunnel, toewijzen aan de netwerkinterface. Vervolgens kunnen deze worden toegevoegd als applicaties aan de tunnel. De applicaties bevinden zich één niveau hoger dan de geconfigureerde tunnel.

Selecteer in de configuratie het domein en geef een naam op voor de subdomein. Vervolgens selecteert u het eindpunt.

Opmerking: Als de naam al is gebruikt voor een andere tunnel, wordt deze niet toegewezen en wordt de verbinding zoals voorheen opgezet. Als de naam wordt gewijzigd, verwijdert Antcas Control de subdomein, mits de ID van de tunnel door Antcas wordt beheerd.

Zero Trust-configuratie

Een alternatief voor de lokaal beheerde configuratie is de Zero Trust-configuratie. Hierbij gebeurt de configuratie in het Cloudflare-console en wordt vervolgens gesynchroniseerd met Antcas Control. Het voordeel van deze variant is dat via Antcas Control geen toegang tot de Cloudflare-configuratie mogelijk is.

Voor deze configuratie hoeft aan de interface niet verplicht een poort te worden toegewezen. Als eindpunt kan elk willekeurig adres in het netwerk worden gebruikt. Hierdoor kan bijvoorbeeld de poort van de hoofdinterface of ook een andere dienst in het netwerk vrijgegeven worden. Afwijkend van de gebruikelijke configuratie kan echter localhost niet als eindpunt worden gebruikt.

Als de verbinding onversleuteld plaatsvindt, moet in het Cloudflare-console de optie noTLSVerify op TRUE worden ingesteld. Een onversleutelde verbinding met een dienst buiten de server wordt echter uit veiligheidsredenen niet aanbevolen.

Voor de configuratie wordt een nieuwe Cloudflare Tunnel toegevoegd in de Infrastructuur onder Server Netwerk VPN en tunnels. Elke tunnel maakt een virtuele netwerkinterface zoals bijvoorbeeld cf-tunnel0. Voor de installatie is alleen de token van de Zero Trust-tunnel nodig. Deze kan rechtstreeks uit het Cloudflare-console worden gekopieerd en ingevoegd. Bevat de ingevoegde tekst bovendien de volledige installatie-opdracht, wordt deze automatisch verwijderd, zodat alleen de token wordt opgeslagen.