← Cloudflare One / cloudflare-one / tutorials
Přístup k databázi MySQL a její zabezpečení pomocí Cloudflare Tunnel a síťových zásad
Díky privátním sítím Cloudflare Tunnel se uživatelé mohou připojit k libovolným aplikacím TCP/UDP mimo prohlížeč, například k databázím. Pomocí síťových zásad, které uplatňují kontroly zero trust, můžete definovat, kdo a co může k těmto aplikacím přistupovat prostřednictvím Cloudflare One Client.
Na konci tohoto tutoriálu budou uživatelé, kteří projdou síťovými zásadami, moci přistupovat ke vzdálené databázi MySQL dostupné přes Cloudflare Tunnel na portu TCP 3306.
Než začnete
Ujistěte se, že máte:
- Databáze MySQL naslouchající vzdáleným připojením a nakonfigurovaná s uživateli, kteří se mohou připojit vzdáleně
- (Volitelné)Zásady resolveru povoleno ve vašem účtu
Vytvořte Cloudflare Tunnel
Nainstalujte cloudflared na serveru ve vaší privátní síti. Tento server by měl mít konektivitu k databázi MySQL.
-
Přihlaste se do Cloudflare dashboardu a přejděte na Sítě > Tunnels.
Přejděte na Tunnels ↗ -
Vyberte Vytvořit tunel.
-
Zadejte název tunelu. Doporučujeme zvolit název, který vystihuje typ prostředků, jež chcete přes tento tunel připojit (například
enterprise-VPC-01). -
Vyberte Create Tunnel.
-
Zvolte svůj operační systém, poté zkopírujte instalační příkaz a spusťte jej v terminálu na svém origin serveru.
-
Počkejte, až se tunel připojí. Jakmile bude spojení navázáno, vyberte Pokračovat.
Přidat trasy privátní sítě
-
V Cloudflare dashboardu přejděte na Sítě > Trasy.
Přejděte na Trasy ↗ -
Vyberte Vytvořit trasu > Tunnel CIDR. Vyberte právě vytvořený tunel a zadejte privátní IP/CIDR svého serveru MySQL (například
10.128.0.175/32), a vyberte Vytvořit trasu. -
(Volitelné) Zopakujte postup a vytvořte druhou trasu pro privátní IP/CIDR vašeho interního DNS serveru.
Aplikace a (volitelně) DNS server jsou nyní připojeny ke Cloudflare.
Vytvořte síťovou zásadu Gateway
- Přejděte na Zásady provozu > Síťové zásady.
- Přidejte síťová zásada která cílí na privátní IP adresu a port databáze MySQL (ve výchozím nastavení port 3306). Následující příklad umožňuje přístup k databázi uživatelům, kteří se do Cloudflare One Client zaregistrovali pomocí
@example.come-mailová adresa. Síťové zásady mohou také zohledňovat kontroly stavu zařízení.
| Selektor | Operátor | Hodnota | Logika | Akce |
|---|---|---|---|---|
| Cílová IP adresa | v | 10.128.0.175 |
And | Allow |
| Cílový port | v | 3306 |
And | |
| User Email | matches regex | .*example.com |
Kromě výše uvedeného pravidla Allow Cloudflare doporučuje přidat obecná bloková zásada na konec seznamu síťových zásad, čímž vynutíte model výchozího zamítnutí.
Povolení uživatelé Cloudflare One Client se nyní mohou připojit k serveru MySQL na 10.128.0.175 pomocí klienta MySQL dle vlastního výběru.
(Volitelné) Vytvořte zásadu resolveru Gateway
Chcete-li uživatelům umožnit přístup k databázi MySQL pomocí interního hostname místo privátní IP adresy, nakonfigurujte zásadu resolveru Gateway.
-
Přejděte na Zásady provozu > Zásady resolveru.
-
Vyberte Přidat zásadu.
-
Vytvořte výraz, který odpovídá privátnímu doména nebo název hostitele aplikace, jako v následujícím příkladu:
Selektor Operátor Hodnota Doména v internalrecord.com -
V Vyberte DNS resolver, vyberte Nakonfigurujte vlastní DNS resolvery.
-
Zadejte soukromou IP adresu DNS serveru.
-
V rozbalovací nabídce vyberte
<IP-address> - Private. -
(Volitelné) Zadejte vlastní port.
-
Vyberte Vytvořit zásadu.
Pokud váš interní DNS server má A záznam pro databázi MySQL, uživatelé se pomocí tohoto záznamu mohou připojit k serveru. Pokud například máte server BIND, který obsahuje tento záznam:
mysql IN A 10.128.0.175
Povolení uživatelé Cloudflare One Client se mohou připojit k databázi MySQL na mysql.internalrecord.com pomocí klienta MySQL dle vlastního výběru.