CloudFrontin geoblokkaus VPN:n takana: lähdön diagnosointi
Edge päättää näkemänsä osoitteen perusteella, ja jaettu lähtö muuttaa sekä maata että mainetta. Testaa jokainen kontrolli erikseen ennen lähtösolmujen vaihtamista.
Maantieteellinen rajoitus on päätös IP-osoitteesta, ja VPN muuttaa sitä, minkä osoitteen palvelu näkee. Tämä yksi lause selittää suurimman osan tukijonoon tulevista sekavista raporteista: «sivusto toimii kotona ja epäonnistuu tunnelissa» ja «sivusto toimii tunnelissa mutta kukaan muu toimistossa ei saa sitä ladattua» ovat sama mekanismi, joka tuottaa vastakkaisia tuloksia. Tämä ohje käy diagnoosin läpi järjestyksessä, joka sulkee pois syitä, alkaen siitä, mitä edge todella kertoi sinulle. Sama lähtöosoite voi läpäistä yhden kontrollin ja epäonnistua seuraavassa, koska jokainen kontrolli arvioi kyseisen osoitteen eri ominaisuutta.
Lue 403 ennen kuin muutat mitään
Geoblokkaus ja WAF-blokkaus saapuvat molemmat 403:na, ja ne korjataan eri paikoissa. Tallenna vastauksen otsakkeet ja rungon ensimmäinen rivi, koska CloudFront lisää välimuistiotsakkeen ja syyn merkkijonon, jotka kertovat, mikä kerros vastasi:
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
Kun jakelu itse blokkasi pyynnön maantieteen vuoksi, runko sisältää viestin, joka nimeää maan rajoituksen. Kun WAF-sääntö blokkasi sen, runko on yleensä yleinen kielletty-sivu ja otsakkeiden jakelun pyyntötunnus on se, minkä viet WAF-lokeihin. Tässä erehtyminen lähettää sinut maiden sallittujen listalle nopeuspohjaisen säännön ongelman vuoksi, mikä on päivä työtä, joka ei voi onnistua.
Vaihe 1: vahvista, minkä osoitteen jakelu näkee
Kysy verkolta, mitä ulkomaailma näkee, samasta koneesta ja samaa reittiä, jota epäonnistuva selain käyttää. curl -s https://checkip.amazonaws.com palauttaa kutsujan julkisen osoitteen, joka VPN-asiakkaalle on lähtö eikä tilaajan kotiyhteys:
curl -s https://checkip.amazonaws.com
nslookup d111111abcdef8.cloudfront.net
Jos tämä osoite kuuluu palveluntarjoajasi lähtöön toisessa maassa, geomaantieteellinen päätös on jo tehty eikä mikään asiakkaassa muuta sitä. Kirjoita osoite tikettiin ennen kuin kosket asetusta, koska se on ainoa raportin tosiasia, josta sinä ja palvelu olette samaa mieltä.
Vaihe 2: erota maa maineesta
CloudFront päättelee katsojan sijainnin kolmannen osapuolen GeoIP-tietokannasta, joka on avaimettu pyynnön lähdeosoitteeseen, ja kartoitus on likimääräinen ja alueellinen, ei tarkka määritys. Kun sijaintia ei voida määrittää, dokumentoitu oletusarvo on tarjoilla sisältö. Mahdollisia tiloja on siis kolme: lähtö kartoittuu blokattuun maahan, sallittuun maahan, tai tietokannalla ei ole mielipidettä ja pyyntö jatkuu.
Blokatun maan käyttäjä voi näyttää olevansa sallitussa maassa, jos palveluntarjoajalla on siellä lähtö, ja sallitun maan käyttäjä voidaan blokata, koska lähtö on rekisteröity muualle. Kumpikaan tulos ei todista, että rajoitus on rikki. Molemmat ovat rajoitus, joka toimii sille annetulla osoitteella, kuten CloudFrontin maantieteellisten rajoitusten dokumentaatio kuvaa.
Maine on toinen akseli ja se selviää tunnelista. AWS WAF:n hallittu anonyymien IP-osoitteiden sääntöryhmä on rakennettu estämään pyyntöjä VPN:istä, välityspalvelimista, Tor-solmuista ja hosting-palveluntarjoajilta, joten maatarkistuksen läpäissyt pyyntö voidaan silti hylätä sen vuoksi, mikä osoite on, ei sen vuoksi, missä se on. Jos blokkaus alkoi, kun siirsit tunnelin pilvipalvelimeen, tämä on todennäköisesti se kerros.
Vaihe 3: tarkista kiintiökäyttäytyminen
Jaetut lähdöt epäonnistuvat kolmannella tavalla. IP-kohtaiset nopeusrajoitukset ja istuntomäärät kohtelevat yhtä osoitetta yhtenä asiakkaana, ja kuluttajalähtö kantaa monta tilaajaa kerralla, joten kotiyhteydestä huomaamaton pyyntökuvio näyttää lähdön puolelta automaatiolta. Oire on rajoitus tai väliaikainen blokkaus, joka poistuu itsestään, ei maantieteellinen virheilmoitus.
Jakelu voi myös tarkoituksella laskea istuntoja osoitetta kohti, esimerkiksi Lambda@Edge-funktiolla, joka kirjoittaa DynamoDB:hen. Se ei tunnista lähdön takana olevaa henkilöä, mutta saa yhden osoitteen käyttäytymään kuin yksi asiakas, mikä on usein todellinen tarkoitus. Kirjaa valituksen takana olevat eri osoitteet ennen minkään kynnyksen säätämistä, koska kahdensadan työpöydän edessä oleva yrityksen NAT näyttää ulkopuolelta täsmälleen kiireiseltä lähdöltä. Odota vääriä positiivisia yrityksen NAT:sta, yliopiston verkosta tai suuresta kotitaloudesta, jotka kaikki esittävät yhtä osoitetta.
Katso WAF:n otospyyntöjä ja nopeuspohjaisten sääntöjen mittareita ennen kuin syytät maantiedettä. Lähdön pyyntömäärään laukeava sääntö jättää selvän allekirjoituksen, ja se kertoo myös, onko korjaus rajan säätö vai eri lähtöreitti.
Mitä muuttaa ja missä järjestyksessä
Päätä ensin, mitä varten kontrolli on. Alueellisen luettelon ylläpitäminen, väärinkäytön rajoittaminen ja sopimuksen valvonta ovat kolme eri tavoitetta, ja vain ensimmäiseen vastataan maaluettelolla. Jos tavoite on väärinkäytön valvonta, lähtö on väärä identiteetin yksikkö, eikä mikään määrä sallittuja listoja tee jaetusta osoitteesta luotettavaa.
Jos sallittua listaa varten todella tarvitaan vakaa osoite, erillinen tai staattinen lähtö auttaa, koska osoite voidaan rekisteröidä eikä se kierrä. Se ei tee osoitteesta asuinosoitetta eikä muuta maata, jonka GeoIP-tietokanta sille antaa. Lähtöjen kierrättäminen, kunnes yksi toimii, on väliaikainen maineen muutos, ei politiikan korjaus.
Kirjoita sitten tulos niillä termeillä, joita pyytäjä käytti: tämä osoite on blokattu maan, maineen tai nopeuden vuoksi, ja tämä on kontrolli, joka muuttuu. Mikä tahansa epämääräisempi kutsuu saman tiketin ensi viikolla eri lähdöllä.