GCP Cloud VPN: kontrolujte bránu, tunel a firewall v tomto pořadí
Tunel, který hlásí navázaný stav, zatímco každá kontrola vyprší, obvykle nemá pravidlo firewallu ve VPC. Zkontrolujte bránu, selektory a typ směrování v tomto pořadí.
Vaše konzole ukazuje zelený tunel, místní monitorování stále nedosáhne na jedinou instanci a přestavba tunelu vypadá jako zřejmé řešení. Málokdy jím je. Navázaný tunel dokazuje jen to, že dvě brány dokončily výměnu IKE. Neříká nic o tom, zda byl paket někdy vpuštěn do vaší VPC.
Mezi tou zelenou ikonou a odpovědí stojí čtyři rozhodnutí a selhávají v předvídatelném pořadí. Začněte tím nejlevnějším.
Tři objekty a jen jeden z nich šifruje
Brána VPN vlastní externí adresu, na kterou šifruje váš protějšek. V konzoli ji nikdy nevytváříte ručně: vyberte nebo rezervujte adresu uvnitř formuláře připojení a brána se objeví s ní. Brána HA zabírá dvě adresy na dvou rozhraních, což se hodí při kontrole kvót později.
Tunel je spárování mezi touto bránou a protějškem. Nese sdílené tajemství a selektory provozu, které slibuje chránit. Právě v těchto selektorech začíná většina tichých poruch. Tunel, jehož místní selektor pokrývá 10.0.0.0/24, nedoručí 10.0.1.0/24, ať vypadá stav jakkoli zdravě.
Vzdálená strana si drží vlastní seznam, obvykle nazývaný šifrovací doména, a terminující hardware jej porovnává s vaším. Žádná strana nevyjednává selektor, který jí nebyl dán.
Typ směrování určuje, co se dostane do směrovací tabulky
Cloud VPN nabízí tři tvary směrování a ty se nemíchají čistě. Směrování založené na zásadách drží statické dvojice selektorů, směrování založené na trasách očekává, že statické trasy přidáte sami, a dynamické směrování inzeruje prefixy přes Cloud Router pomocí BGP. Vyberte jeden záměrně.
Dynamický tunel s ručně psanými statickými trasami vedle sebe vytváří směrovací tabulku, která se vyprázdní pokaždé, když BGP relace zakolísá.
Dynamické je jediný tvar, který dovoluje změnit chráněné prefixy bez přestavby tunelu, a vtahuje Cloud Router do množiny objektů, které musíte ověřit. Statické selektory zůstávají použitelné, když je protějšek hardwarový firewall, který neumí mluvit BGP. Pak oba konce potřebují stejné rozsahy a konkrétnější záznam musí zvítězit na obou. Dvojice, která se rozchází o jednu podsíť, se naváže a pak nese polovinu vašeho provozu.
Implicitní zamítnutí sedí za tunelem
Příchozí provoz se vyhodnocuje proti implicitnímu zamítnutí s nejnižší prioritou a toto pravidlo nezajímá, že paket dorazil zašifrovaný. Dokud pravidlo firewallu nepojmenuje místní rozsah a používaný port, paket se dešifruje, prohlédne a zahodí. Protokol VPN zůstává celou dobu čistý, protože tunel udělal přesně to, co slíbil.
Místo toho čtěte protokol zamítnutí firewallu, když je tunel aktivní a kontrola vyprší, a pak omezte pravidlo na zdrojový rozsah a porty, které potřebujete:
gcloud compute firewall-rules create allow-from-dc \
--network=vpn-vpc \
--direction=INGRESS \
--source-ranges=192.168.10.0/24 \
--allow=tcp:22,tcp:5432,icmpFungování jednoho směru je stopa firewallu
Odchozí provoz se chová jinak, protože implicitní pravidlo povolení nechá instance odesílat kamkoli. Datové centrum, které nedosáhne na VM, často stojí za dokonale funkční odchozí cestou v opačném směru. Tato asymetrie odděluje opomenutí firewallu od poruchy směrování, protože porucha směrování přeruší oba směry naráz. Otestujte opačný směr, než upravíte další pravidlo.
Vytvoření adresy je také kvótní operace. Projekt blízko svého limitu používaných externích adres odmítne připojení s chybou, která zní jako selhání oprávnění.
Selektory, kvóty, pak čtyři kontroly
Tunely vytvořené v konzoli někdy vracejí prázdný vzdálený selektor provozu z gcloud compute vpn-tunnels describe, zatímco generované trasy nesou provoz správně. Porovnejte, co API zaznamenává, s rozsahy, které skutečně chráníte, než usoudíte, že je tunel špatně. Vytvoření přes API nebo SDK udrží selektor explicitní.
Kvóty jsou druhé snadné opomenutí. Požádejte o navýšení před oknem údržby, ne během něj, a zkontrolujte počet adres ve stejném projektu jako brána.
Pracujte zvenčí dovnitř: stav protějšku, oba seznamy selektorů, trasa pro každou stranu, pravidlo příchozího provozu pro zdrojový rozsah a port, pak zachytávání paketů. Zapište adresu brány, oba seznamy selektorů a typ směrování do tiketu změny, dokud je tunel nový, protože další inženýr, který přidá podsíť, bude potřebovat všechny tři.