Tunel site-to-site je aktívny, lokálny klient dosiahne niektoré hosty Azure a iné nie, a niekto preto pripojil skupinu zabezpečenia siete na GatewaySubnet. Zastavte sa tam. Azure nepodporuje NSG na GatewaySubnet a skupina nevidí vnútorný paket tak ako pravidlo pracovnej záťaže. Umiestnite politiku na cieľovú podsieť alebo NIC, zosúlaďte zdrojovú adresu, ktorá existuje po dešifrovaní, a potom overte novým pripojením, nie starým.

Umiestnite NSG tam, kde ho Azure vyhodnocuje

Podporovanou hranicou pre filtrovanie pracovnej záťaže je cieľová podsieť alebo cieľové sieťové rozhranie. Podsieť brány je infraštruktúra a Azure dokumentuje, že NSG tam nie sú podporované a môžu zhoršiť prevádzku brány.

S umiestnením je aj logický problém. NSG na GatewaySubnet by vyhodnocoval vonkajšiu výmenu IPsec, ktorej adresy patria obom bránam. Vaše pravidlo aplikácie potrebuje súkromný zdroj vnútri tunela a tento paket existuje až po tom, čo ho brána dešifruje. Pripojte skupinu k podsieti záťaže a pravidlo uvidí adresu, pre ktorú bolo napísané.

Pred akoukoľvek zmenou skontrolujte aktuálne pridruženia, aby ste vedeli, čo presúvate:

az network vnet subnet show -g rg-net -n snet-app --vnet-name vnet-prod --query networkSecurityGroup.id
az network vnet subnet show -g rg-net -n GatewaySubnet --vnet-name vnet-prod --query networkSecurityGroup.id

Nájdite zdrojovú adresu po dešifrovaní

Vnútorný zdroj je súkromná adresa lokálneho klienta alebo adresa, ktorú zariadenie či NAT VPN predkladá po preklade. Nie je to verejná adresa lokálnej brány VPN, ktorá patrí vonkajšej výmene.

Keď je NAT súčasťou návrhu, potvrďte predkladaný zdroj namiesto toho, aby ste ho predpokladali. Zachytávanie paketov na VM Azure alebo pole zdroja v protokole pripojení služby vyrieši otázku rýchlejšie ako čítanie lokálnej konfigurácie. Potom napíšte pravidlo proti tejto adrese a skutočnému cieľovému portu.

az network nsg rule create -g rg-net --nsg-name nsg-app -n allow-onprem-https --priority 200 --direction Inbound --access Allow --protocol Tcp --source-address-prefixes 192.168.10.0/24 --destination-address-prefixes 10.1.2.0/24 --destination-port-ranges 443

Použite jedno pravidlo na každú službu, ktorú chcete vystaviť, a držte zoznam portov krátky. Pravidlo, ktoré povoľuje všetky porty z lokálneho rozsahu, mení NSG na formalitu.

Skontrolujte predvolený rozsah VirtualNetwork

Značka služby VirtualNetwork je širšia ako lokálna virtuálna sieť. Jej definícia zahŕňa pripojené lokálne adresné priestory, siete prepojené peeringom a ďalšie prefixy pripojené bránou. Preto predvolené pravidlo povolenia obmedzené na VirtualNetwork už môže povoľovať prevádzku tunela, ktorú operátor považoval za vonkajšiu.

Prečítajte si predvolené pravidlá, skôr než pridáte úzke, a prečítajte si každé pravidlo s vyššou prioritou, ktoré by sa mohlo zhodovať ako prvé. Pridanie výslovného povolenia neodstráni širšie pravidlo, ktoré tok už povoľuje. Kde politika vyžaduje zamietnutie, umiestnite ho na prioritu, ktorá sa skutočne vyhodnocuje pred povolením.

Dokumentácia Microsoftu k značkám služieb uvádza, čo značka VirtualNetwork pokrýva, a je to odkaz, ktorý citujete, keď niekto tvrdí, že značka znamená len rozsah VNet.

Prečítajte si efektívne pravidlá na oboch hraniciach

Keď platia NSG podsiety aj NSG NIC, tok musí splniť obe. Povolenie v jednom neruší zamietnutie v druhom a paket skutočne stretáva súhrnný pohľad.

az network nic show-effective-nsg -g rg-net -n vm-app-nic -o table

Ak sa uplatňujú pravidlá správcu zabezpečenia Azure Virtual Network Manager, prejdite aj túto vrstvu. Administrátorské pravidlo Always allow môže doručiť prevádzku bez vyhodnotenia NSG, kým administrátorské Deny ho zastaví skôr, než ho NSG uvidia. Revízia len NSG je pre také usporiadanie neúplná.

Pamätajte, že NSG sú stavové. Úprava pravidla nemusí ukončiť existujúce povolené pripojenie, takže akceptačný test potrebuje nový tok. Táto vlastnosť je užitočná v produkcii a zavádzajúca počas zmenového okna.

Overte novým pripojením

Otvorte novú reláciu z lokálneho klienta na port služby a potom to zopakujte z hosta, ktorému má byť odmietnutý prístup. Spustite test toku aj zo strany VM, aby ste vedeli, že spiatočná cesta je v poriadku.

az network watcher test-ip-flow -g rg-net --vm vm-app --direction Inbound --protocol Tcp --local 10.1.2.4:443 --remote 192.168.10.50:51515

Povolenie NSG je jedno rozhodnutie o prístupe, nie trasa a nie poslucháč. Ak pravidlo tok povolí a pripojenie stále zlyháva, skontrolujte trasu klienta do VPN, spiatočnú trasu Azure a firewall hosta, skôr než skupinu znova upravíte. Zaznamenajte skutočnú zdrojovú adresu, pridruženia NSG a zodpovedajúce pravidlo spolu so schválenou službou, pretože ďalšia zmena peeringu alebo trasy môže zmeniť, čo značka VirtualNetwork pokrýva.

Súvisiace články