Provoz Windows Sandbox ve výchozím nastavení nesleduje VPN hostitele
Sandbox se do sítě dostane přes virtuální adaptér na výchozím přepínači. Zda jej váš tunel pokrývá, je vlastnost klienta, proto to zkontrolujte uvnitř.
Spustíte Windows Sandbox, otevřete v něm prohlížeč a stránka se načte přes vaše běžné připojení, i když byl hostitel před minutou na VPN. Nic není rozbité. Sandbox dostane virtuální síťový adaptér připojený k výchozímu přepínači hostitele a to, zda tunel hostitele tuto cestu pokrývá, je vlastnost klienta VPN, ne Windows.
Co sandbox skutečně dostane
Sandbox je odlehčený virtuální stroj s vlastním síťovým adaptérem. Tento adaptér se připojuje přes výchozí přepínač Hyper-V hostitele, který překládá provoz sandboxu na virtuální rozhraní Ethernet hostitele, než opustí stroj. Tento detail vysvětluje téměř každý symptom, který lidé v této souvislosti hlásí.
Sandbox tedy není proces na vaší ploše. Je to samostatný síťový koncový bod, jehož pakety hostitel přeposílá, a hostitelský firewall i klient VPN toto přeposílání vidí každý po svém. Pravidlo napsané pro proces prohlížeče automaticky neodpovídá přeloženému rámci z virtuálního přepínače.
Dva požadavky, které vypadají jako jeden
Dosáhnout na soukromý prostředek a protlačit každý požadavek sandboxu tunelem jsou dva různé cíle. První potřebuje trasu a překlad jmen, které fungují pro koncový bod sandboxu. Druhý potřebuje vynucení, které přežije opětovné připojení i selhání. Ani jedno nevyplývá z druhého a kontrola, která splní jedno, neříká nic o druhém.
Kontrola veřejné adresy plně neodpovídá ani na jednu z těch dvou otázek. Když uvnitř sandboxu vidíte výstup VPN, znamená to, že část provozu tunel použila. Neříká to nic o tom, zda se soukromá jména překládají, ani co se stane s požadavkem, který začne, když tunel nefunguje.
Než cokoli otestujete, zapište si, který z nich potřebujete, protože oba požadavky vedou k jinému návrhu a jen jeden z nich lze ověřit prohlížečem.
Kontrolujte zevnitř sandboxu
Jediné smysluplné pozorování přichází ze sezení samotného sandboxu, ne z hostitele. Otevřete tam PowerShell a podívejte se na adaptér, překlad jmen a cestu k adrese z dokumentace:
ipconfig /all Resolve-DnsName files.corp.example Test-NetConnection 198.51.100.7 -Port 443 Get-NetRoute -DestinationPrefix 0.0.0.0/0
Seznam adaptérů ukazuje adresu a bránu, které sandbox dostal. Jiná brána než na hostiteli je u výchozího přepínače normální, proto porovnávejte výstup, a ne bránu. Test překladu ukazuje, zda se na soukromé jméno vůbec odpovídá, a právě zde se nastavení split-horizon obvykle rozchází s hostitelem. Řádek trasy ukazuje, kterou bránu sandbox považuje za vlastníka výchozí trasy.
Zopakujte stejné tři kontroly s tunelem připojeným a odpojeným. Výsledek, který se mezi těmito stavy nemění, je důkaz, že tunel vůbec není na cestě sandboxu, ať už veřejná kontrola ukázala jakoukoli adresu.
Vypněte síťování, když ho sandbox nepotřebuje
Pro prohlížení offline může vlastní konfigurační soubor síť úplně odstranit. Nastavení je jediný prvek v konfiguračním dokumentu:
<Configuration> <Networking>Disable</Networking> </Configuration>
Referenční příručka ke konfiguraci sandboxu dokumentuje tento prvek a varuje, že povolené síťování může vystavit vnitřní sítě aplikacím, kterým nedůvěřujete. Právě to varování je celý důvod, proč nastavení zadat výslovně, místo abyste přijali výchozí hodnotu.
Přepínač však nevybírá síťové rozhraní VPN. Je to binární rozhodnutí o tom, zda síť existuje, ne způsob, jak sandbox připoutat ke konkrétnímu tunelu. Požadavek, který pojmenuje výstup, nemůže splnit přepínač, který jen rozhoduje, zda nějaký existuje.
Navrhněte hranici, než cokoli povolíte
Pokud je požadavkem striktní izolace, zvolte návrh sítě virtuálního stroje, který ji dokáže vynutit a použijte podporovanou politiku produktu VPN pro přeposílaný provoz nebo provoz virtuálních strojů. Hádání chování hostitelského klienta není návrh a jediná úspěšná kontrola není implementace.
Nedávejte nedůvěryhodnému sandboxu firemní profil VPN ani soukromé přihlašovací údaje, aby test prošel. Vyměníte tím hranici, kterou jste se snažili vytvořit, za zelený výsledek a údaj přežije test.
Zapište síťový režim, pozorovaný výstup a chování při opětovném připojení do poznámek k nasazení. Když aktualizace klienta změní, jak se přeposílaný provoz zpracovává, právě ty poznámky říkají, že požadavek nebyl nikdy skutečně splněn.