Geografické obmedzenie je rozhodnutie o IP adrese a VPN mení, ktorú adresu služba vidí. Táto jediná veta vysvetľuje väčšinu mätúcich hlásení, ktoré sa dostanú do frontu podpory: „stránka doma funguje a v tuneli zlyháva“ a „stránka v tuneli funguje, ale nikto iný v kancelárii ju nenačíta“ sú ten istý mechanizmus s opačnými výsledkami. Táto príručka vedie diagnostiku v poradí, ktoré vylučuje príčiny, počnúc tým, čo vám edge skutočne povedal. Rovnaká výstupná adresa môže prejsť jednou kontrolou a zlyhať na ďalšej, pretože každá kontrola hodnotí inú vlastnosť tejto adresy.

Prečítajte si 403, skôr než čokoľvek zmeníte

Geoblok aj blok WAF prichádzajú ako 403 a opravujú sa na rôznych miestach. Zachyťte hlavičky odpovede a prvý riadok tela, pretože CloudFront pridáva hlavičku vyrovnávacej pamäte a reťazec dôvodu, ktoré vám povedia, ktorá vrstva odpovedala:

curl -sS -o /tmp/body.txt -D /tmp/headers.txt https://d111111abcdef8.cloudfront.net/
grep -i "x-cache\|via" /tmp/headers.txt
head -c 300 /tmp/body.txt

Keď distribúcia sama zablokovala požiadavku z dôvodu geografie, telo obsahuje správu, ktorá pomenúva obmedzenie krajiny. Keď ju zablokovalo pravidlo WAF, telo je zvyčajne všeobecná stránka so zákazom a identifikátor požiadavky distribúcie v hlavičkách je to, čo si vezmete do logov WAF. Chyba tu vás pošle do zoznamu povolených krajín pre problém s pravidlom založeným na rýchlosti, čo je deň práce, ktorý nemôže uspieť.

Krok 1: overte, ktorú adresu distribúcia vidí

Opýtajte sa siete, čo vidí vonkajší svet, z toho istého stroja a tou istou trasou, ktorú používa zlyhávajúci prehliadač. curl -s https://checkip.amazonaws.com vracia verejnú adresu volajúceho, ktorá je pre klienta VPN výstup, nie domáce pripojenie odberateľa:

curl -s https://checkip.amazonaws.com
nslookup d111111abcdef8.cloudfront.net

Ak táto adresa patrí výstupu vášho poskytovateľa v inej krajine, geografické rozhodnutie už padlo a nič na klientovi ho nezmení. Zapíšte adresu do tiketu, skôr než sa dotknete nastavenia, pretože je to jediný fakt v správe, na ktorom sa vy a služba zhodnete.

Krok 2: oddeľte krajinu od reputácie

CloudFront určuje polohu diváka z databázy GeoIP tretej strany viazanej na zdrojovú adresu požiadavky a mapovanie je približné a regionálne, nie presné určenie. Keď polohu nemožno určiť, dokumentovaným predvoleným správaním je obsah aj tak doručiť. Existujú teda tri možné stavy: výstup sa mapuje na blokovanú krajinu, na povolenú krajinu, alebo databáza nemá názor a požiadavka pokračuje.

Používateľ v blokovanej krajine môže vyzerať ako v povolenej, ak tam poskytovateľ má výstup, a používateľ v povolenej krajine môže byť zablokovaný, pretože výstup je zaregistrovaný inde. Ani jeden výsledok nedokazuje, že obmedzenie je pokazené. Oba sú obmedzením pracujúcim s adresou, ktorá mu bola daná, ako opisuje dokumentácia CloudFront ku geografickým obmedzeniam.

Reputácia je druhá os a tunel prežije. Spravovaná skupina pravidiel AWS WAF pre anonymné IP je postavená tak, aby blokovala požiadavky z VPN, proxy, uzlov Tor a poskytovateľov hostingu, takže požiadavka, ktorá prejde kontrolou krajiny, môže byť stále odmietnutá kvôli tomu, čo adresa je, nie kde je. Ak blokovanie začalo, keď ste tunel presunuli na cloudový host, je to pravdepodobne táto vrstva.

Krok 3: skontrolujte správanie kvóty

Zdieľané výstupy zlyhávajú tretím spôsobom. Limity rýchlosti na IP a počty relácií považujú jednu adresu za jedného klienta a spotrebiteľský výstup nesie veľa odberateľov naraz, takže vzor požiadaviek, ktorý je z domáceho pripojenia nenápadný, vyzerá z výstupu ako automatizácia. Príznakom je obmedzovanie alebo dočasný blok, ktorý sám zmizne, nie geografická chybová správa.

Distribúcia môže aj zámerne počítať relácie na adresu, napríklad funkciou Lambda@Edge zapisujúcou do DynamoDB. To neidentifikuje osobu za výstupom, ale spôsobí, že sa jedna adresa správa ako jeden klient, čo je často skutočný zámer. Zaznamenajte rôzne adresy za sťažnosťou, skôr než začnete ladiť akýkoľvek prah, pretože podnikový NAT pred dvoma stovkami stolov zvonku vyzerá presne ako zaneprázdnený výstup. Očakávajte falošné poplachy od podnikového NAT, univerzitnej siete alebo veľkej domácnosti, ktoré všetky predstavujú jednu adresu.

Pozrite sa na vzorkované požiadavky WAF a metriky pravidiel založených na rýchlosti, skôr než obviníte geografiu. Pravidlo, ktoré sa spustí na objem požiadaviek výstupu, zanecháva jasný podpis a tiež vám povie, či je opravou úprava limitu, alebo iná výstupná cesta.

Čo zmeniť a v akom poradí

Najprv rozhodnite, na čo kontrola slúži. Udržiavať regionálny katalóg, obmedzovať zneužívanie a vynucovať zmluvu sú tri rôzne ciele a len prvý rieši zoznam krajín. Ak je cieľom kontrola zneužívania, výstup je nesprávna jednotka identity a žiadne množstvo povolených zoznamov neurobí zdieľanú adresu dôveryhodnou.

Ak je pre povolený zoznam skutočne potrebná stabilná adresa, pomôže vyhradený alebo statický výstup, pretože adresu možno zaregistrovať a nerotuje. Neurobí z adresy rezidenčnú a nezmení krajinu, ktorú jej priraďuje databáza GeoIP. Rotovanie výstupov, kým jeden nefunguje, je dočasná zmena reputácie, nie oprava politiky.

Potom zapíšte výsledok termínmi, ktoré použil žiadateľ: táto adresa je blokovaná podľa krajiny, podľa reputácie alebo podľa rýchlosti, a toto je kontrola, ktorá sa zmení. Čokoľvek nejasnejšie pozýva ten istý tiket budúci týždeň s iným výstupom.

Súvisiace články