← Cloudflare One / cloudflare-one / networks / connectors / cloudflare-tunnel / private-net / cloudflared
Virtuální sítě
Dostupnost funkcí
| Klientské režimy | Plány Zero Trust ↗ |
|---|---|
|
Všechny plány |
| Systém | Dostupnost |
|---|---|
| Windows | ✅ |
| macOS | ✅ |
| Linux | ✅ |
| iOS | ✅ |
| Android | ✅ |
| ChromeOS | ✅ |
Virtuální sítě zajišťují izolaci směrování v rámci vašeho účtu Cloudflare. Každá virtuální síť má vlastní směrovací tabulku, což vám umožňuje oddělit provoz mezi různými prostředími, partnery nebo aplikacemi.
Organizace může mít například samostatné sítě VPC „production“ a „staging“, které obě používají stejný privátní rozsah IP adres (například 10.128.0.0/24). Bez virtuálních sítí Cloudflare nedokáže rozlišit mezi 10.128.0.1 v produkčním prostředí a 10.128.0.1 ve stagingu. Vytvořením dvou virtuálních sítí můžete provoz deterministicky směrovat do správného prostředí. Uživatelé si v Cloudflare One Client vyberou, ke které virtuální síti se chtějí připojit.
Koncepční přehled virtuálních sítí, včetně toho, jak fungují napříč produkty Cloudflare, najdete v Virtuální sítě.
Případy použití
Zde je několik scénářů, kdy se virtual networks mohou hodit:
- Spravujte produkční a staging prostředí, která používají stejný adresní prostor.
- Spravujte akvizice nebo fúze mezi organizacemi, které používají stejný adresní prostor.
- Umožňuje poskytovatelům profesionálních IT služeb přístup k síti zákazníka pro různé účely správy.
- Umožňuje vývojářům nebo uživatelům homelabů deterministicky směrovat provoz přes domácí síť a vynutit si tak další bezpečnostní kontroly.
- Zajistěte další segmentaci sítí a prostředků z bezpečnostních důvodů (nad rámec pouhého vynucování zásad), a to při zachování veškeré konfigurace v rámci jediného účtu Cloudflare.
Předpoklady
- Nainstalujte
cloudflaredv každé privátní síti. - Nasaďte Cloudflare One Client na uživatelských zařízeních.
Vytvořit virtuální síť
V tomto příkladu se pojmem „privátní síť“ rozumí samostatné prostředí (například staging nebo produkce) s vlastním, překrývajícím se rozsahem IP adres (10.128.0.1/32 staging a 10.128.0.1/32 produkce). Pokud vaše prostředí používají nepřekrývající se IP adresy, nepotřebujete pro každé z nich samostatný tunel. Místo toho můžete k jednomu tunelu přidat více tras.
Chcete-li směrovat překrývající se IP adresy přes virtual networks:
- Vytvořte dvě jedinečné virtuální sítě:
-
V Cloudflare dashboardu přejděte na Sítě > Trasy > Virtuální sítě.
Přejděte na Virtuální sítě ↗ -
Vyberte Vytvořit virtuální síť.
-
Pojmenujte virtuální síť
staging-vneta vyberte Save. -
Opakujte kroky 1a-1d a vytvořte další virtuální síť s názvem
production-vnet.
-
- Vytvořte Cloudflare Tunnel pro každou privátní síť s překrývajícími se IP adresami (jeden tunel na izolované prostředí, například staging a produkci):
-
Přejděte na Sítě > Tunnels.
-
Vyberte Vytvořit tunel.
-
Pojmenujte tunel
Staging tunnela vyberte Vytvořit. -
Nainstalujte konektor ve svém stagingovém prostředí.
-
Přejděte na Sítě > Trasy.
Přejděte na Trasy ↗ -
Vyberte Vytvořit trasu > Tunnel CIDR.
-
Vyberte
Staging tunnel, zadejte10.128.0.1/32jako síť a vyberte staging-vnet jako virtuální síť. Vyberte Vytvořit trasu. -
Opakujte kroky 2a-2d a vytvořte další tunel s názvem
Production tunnel. Nezapomeňte nainstalovat konektor v produkčním prostředí. -
Opakujte kroky 2e-2g a vytvořte trasu pro
Production tunnelhodnotou10.128.0.1/32přiřazené k production-vnet.
-
Nyní máme dvě překrývající se IP adresy směrované přes staging-vnet a production-vnet v uvedeném pořadí. K tomu můžete použít Cloudflare One Client Přepínání mezi virtuálními sítěmi.
Chcete-li směrovat překrývající se IP adresy přes virtual networks:
-
Přidejte následující oprávnění do svého
cloudflare_api_token↗:Cloudflare Tunnel Write
-
Vytvořte dvě jedinečné virtuální sítě:
resource "cloudflare_zero_trust_tunnel_cloudflared_virtual_network" "staging_vnet" { account_id = var.cloudflare_account_id name = "staging-vnet" comment = "Staging virtual network" is_default = false } resource "cloudflare_zero_trust_tunnel_cloudflared_virtual_network" "production_vnet" { account_id = var.cloudflare_account_id name = "production-vnet" comment = "Production virtual network" is_default = false } -
Vytvořte Cloudflare Tunnel pro každou privátní síť s překrývajícími se IP adresami (jeden tunel na izolované prostředí, například staging a produkci):
resource "cloudflare_zero_trust_tunnel_cloudflared" "staging_tunnel" { account_id = var.cloudflare_account_id name = "Staging tunnel" config_src = "cloudflare" } resource "cloudflare_zero_trust_tunnel_cloudflared" "production_tunnel" { account_id = var.cloudflare_account_id name = "Production tunnel" config_src = "cloudflare" } -
Trasa
10.128.0.1/32přesStaging tunnela přiřaďte ji kstaging-vnet. Nasměrujte10.128.0.1/32přesProduction tunnela přiřaďte ji kproduction-vnet.resource "cloudflare_zero_trust_tunnel_cloudflared_route" "staging_tunnel_route" { account_id = var.cloudflare_account_id tunnel_id = cloudflare_zero_trust_tunnel_cloudflared.staging_tunnel.id network = "10.128.0.1/32" comment = "Staging tunnel route" virtual_network_id = cloudflare_zero_trust_tunnel_cloudflared_virtual_network.staging_vnet.id } resource "cloudflare_zero_trust_tunnel_cloudflared_route" "production_tunnel_route" { account_id = var.cloudflare_account_id tunnel_id = cloudflare_zero_trust_tunnel_cloudflared.production_tunnel.id network = "10.128.0.1/32" comment = "Production tunnel route" virtual_network_id = cloudflare_zero_trust_tunnel_cloudflared_virtual_network.production_vnet.id } -
Získání tokenu pro každý tunel.
-
S využitím tokenů tunelu spusťte
Staging tunnelve vašem staging prostředí a spusťteProduction tunnelve vašem produkčním prostředí. Přečtěte si Instalace a spuštění tunelu.
Chcete-li směrovat překrývající se IP adresy přes virtual networks pro lokálně spravované tunely:
-
Vytvořte Cloudflare Tunnel pro každou privátní síť s překrývajícími se IP adresami (jeden tunel na izolované prostředí, například staging a produkci):
-
Ve svém staging prostředí ověřte
cloudflared:cloudflared login -
Vytvořte tunel pro připojení vaší staging sítě ke Cloudflare.
cloudflared tunnel create staging-tunnel -
Ve svém produkčním prostředí ověřte
cloudflared:cloudflared login -
Vytvořte tunel pro připojení vaší produkční sítě ke Cloudflare.
cloudflared tunnel create production-tunnel
-
Následující kroky lze provést z libovolného cloudflared instance.
-
Vytvořte dvě jedinečné virtuální sítě.
cloudflared tunnel vnet add staging-vnet cloudflared tunnel vnet add production-vnet -
Než budete pokračovat, spusťte následující příkaz a ověřte, že se nově vytvořené virtuální sítě zobrazují správně:
cloudflared tunnel vnet list
-
Nakonfigurujte tunely s rozsahem IP/CIDR svých privátních sítí a přiřaďte je k příslušným virtuálním sítím.
cloudflared tunnel route ip add --vnet staging-vnet 10.128.0.3/32 staging-tunnel cloudflared tunnel route ip add --vnet production-vnet 10.128.0.3/32 production-tunnel -
Ověřte, že jsou IP trasy uvedeny správně:
cloudflared tunnel route ip listNyní máme dvě překrývající se IP adresy směrované přes
staging-vnetaproduction-vnetv uvedeném pořadí.-
Ve svém staging prostředí vytvořte konfigurační soubor pro
staging-tunnel. Konfigurační soubor bude mít následující strukturu:tunnel: <Tunnel-UUID> credentials-file: /root/.cloudflared/credentials-file.json warp-routing: enabled: true -
Spusťte tunel.
cloudflared tunnel run staging-tunnel -
Ve svém produkčním prostředí zopakujte kroky 6 a 7 pro
production-tunnel.
Nyní můžete použít Cloudflare One Client k Přepínání mezi virtuálními sítěmi.
-
Odstraňte Virtual Network
Chcete-li odstranit virtuální síť:
-
V Cloudflare dashboardu přejděte na Sítě > Trasy.
Přejděte na Trasy ↗ -
Na Trasy kartě zkontrolujte, že virtuální síti, kterou se pokoušíte odstranit, nejsou přiřazeny žádné trasy. Pokud se virtuální síť používá, tyto trasy nejprve odstraňte nebo je přeřaďte jiné virtuální síti.
-
Přejděte na Virtuální sítě kartu a najděte svou virtuální síť.
-
Vyberte nabídku tří teček a zvolte Smazat.
Volitelně můžete odstranit tunel přiřazený k vaší virtuální síti.
Chcete-li odstranit virtuální síť pro lokálně spravované tunely:
-
Odstraňte všechny IP trasy ve Virtual Network. Například,
cloudflared tunnel route ip delete --vnet staging-vnet 10.128.0.3/32 -
(Volitelné) Odstraňte tunel přiřazený k virtuální síti.
cloudflared tunnel delete staging-tunnel -
Odstraňte Virtual Network.
cloudflared tunnel vnet delete staging-vnet
Můžete ověřit, že byla virtuální síť úspěšně odstraněna, zadáním cloudflared tunnel vnet list.
Připojení k virtuální síti
Windows, macOS a Linux
- Otevřete Cloudflare One Client.
- Přejděte na Domů.
- V VNET rozbalovací nabídce vyberte virtuální síť, ke které se chcete připojit (například
staging-vnet).
- Otevřete Cloudflare One Client.
- Přejděte na Nastavení > Traffic and DNS mode > Virtuální sítě.
- Zvolte virtuální síť, ke které se chcete připojit, například
staging-vnet.
Když navštívíte 10.128.0.3/32, Cloudflare One Client nasměruje váš požadavek do prostředí staging.
iOS, Android a ChromeOS
- Spusťte aplikaci Cloudflare One Agent.
- Přejděte na Pokročilé > Možnosti připojení > Virtuální sítě.
- Zvolte virtuální síť, ke které se chcete připojit, například
staging-vnet.
Když navštívíte 10.128.0.3/32, Cloudflare One Client nasměruje váš požadavek do prostředí staging.