Databáza, ktorá funguje pred pripojením VPN a potom zlyhá, len zriedka býva problém s prihlasovacími údajmi. Cloudové firewally porovnávajú zdrojové adresy a plný tunel nahrádza práve tú, s ktorou ich porovnávali. Rozdiel medzi tým, čo si myslíte, že váš notebook odosiela, a tým, čo server prijíma, je celá chyba, a dá sa zmerať jediným krokom.

Čím sa zdrojová adresa stane

V plnom tuneli opúšťa každý paket sieť cez bránu VPN, takže server vidí výstupnú adresu brány, nie vaše domáce pripojenie. Ak je na ceste dopredný proxy server, dorazí jeho adresa. Obe sú legitímne zdroje a ani jedna nie je adresa z vášho pôvodného pravidla.

Pravidlá firewallu Azure SQL na úrovni servera a databázy porovnávajú adresu klienta, ktorá dorazí k logickému serveru, a po plnom tuneli je to výstupná adresa. Bezpečnostná skupina AWS povoľujúca jednu adresu sa správa rovnako. Paket sa zahodí pred autentifikáciou, takže chyba, ktorú dostanete, vyzerá ako zlyhanie siete, nie ako problém s oprávneniami. Práve preto ľudia začínajú resetovať heslá.

Kde sa rozhoduje zoznam povolených adries

Prečítajte si pravidlo, ktoré zodpovedá zlyhávajúcej ceste, nie pravidlo, ktoré si pamätáte, že ste vytvorili. Všimnite si jeho rozsah, port, protokol a to, či sa vyhodnocuje pred akoukoľvek kontrolou identity.

Potom rozhodnite, ktorá vrstva toto rozhodnutie legitímne vlastní. Pravidlo adresy odpovedá na to, odkiaľ prevádzka prichádza. Súkromný koncový bod odpovedá na to, či je služba vôbec dostupná cez súkromnú cestu. Výnimka pre rozdelený tunel odpovedá na to, ktoré ciele obchádzajú tunel. Nie sú zameniteľné a každá zlyháva inak, keď sa tunel zmení.

Tri opravy, tri vrstvy

Každá možnosť nižšie opravuje tok z iného dôvodu a výber nesprávnej dá pripojenie, ktoré funguje do ďalšej zmeny brány.

RepairLayer it changesWhat it does not fix
Add the egress address to the ruleSource address matchingNothing about routing, and it breaks when the egress moves
Use a private endpointWhether the service is reached privatelyA client that still resolves the public name
Add a split-tunnel exceptionWhich flows bypass the tunnelAn expired credential or a wrong password

Pridanie výstupnej adresy je najmenšia zmena a najkrehkejšia, pretože nová brána alebo iný región ju ticho zneplatní. Zdokumentujte adresu vedľa definície tunela, aby sa obe pohybovali spolu. Dočasný široký rozsah je diagnostika, nie oprava; ponechať ho na mieste je spôsob, akým vnútorné služby napokon zostanú vystavené.

Prečo sa spravovaná platforma nemôže pripojiť k tunelu

Aplikačné platformy ako Heroku, AppHarbor alebo CloudBees spúšťajú váš kód v prostredí bez zariadenia tun alebo tap a bez oprávnenia ho vytvoriť. Ich vstupný model je HTTP, nie ľubovoľný načúvajúci socket. Buildpack, ktorý dodáva binárku VPN, stále nemá kam umiestniť rozhranie. Fungujúce vzory sú statická výstupná adresa, ktorú môže databáza povoliť, produkt súkromného pripojenia, ktorý platforma ponúka, alebo proxy v DMZ dostupný cez HTTPS.

Tento proxy je prístupová cesta s vlastnou autentifikáciou a protokolovaním. Nečiní z platformy člena vašej VPN a takýto opis vytvára pravidlá, ktoré nikto nemôže auditovať.

Overte to z klienta, ktorý zlyhal

Pripojte sa znova a zopakujte presnú cestu klienta. Skontrolujte zdrojovú adresu, ktorú služba zaznamenáva, trasu, ktorú klient volí pre názov databázy, a výsledok skutočnej požiadavky, v tomto poradí. Test z brány dokazuje, že brána funguje, čo nikdy nebolo sporné. Ak sa pripojenie teraz autentifikuje a požiadavka stále zlyháva, zostávajúcim problémom je oprávnenie v databáze.

Tieto pravidlá kontrolujte pri každej zmene tunela. Vymenená brána alebo nový rozsah výstupných adries preruší cestu bez akejkoľvek zmeny konfigurácie aplikácie.

Súvisiace články