Nginx

Kuidas blokeerida kiirlinkimine Nginxiga

Kuidas blokeerida kiirlinkimine Nginxiga
Nginx on kerge veebiserver, mis suudab teatud aja jooksul käsitseda hulgaliselt taotlusi, muutmata serverit hõivatud. See sisaldab keerukaid funktsioone, nagu asünkroonne töötlus, tugi ipv6-le, vahemälulaadija, http / 2 tugi, blokeeritud kiirlingi loomine, lõimapargid, SPDY ja SSL ning palju muud. Nende hulgas on kõigi veebisaitide jaoks üks olulisemaid funktsioone blokeeritud kiirlingi linkimine. Kiirlinkimine on pahatahtlik tava, mida sageli teevad väikesed veebimeistrid, kui nad ei saa ribalaiuse kulusid endale lubada, ja võtavad selle lõpuks mujalt. See takistab seaduslikke veebimeistreid maksma pandud ribalaiuse kasutamisel. Pealegi võib lingitud ressurss algset veebisaiti külastavatele kasutajatele kättesaamatuks jääda, kui algsele veebimeistrile eraldatud ribalaius on otsa saanud ja saidiomanik ei maksnud liiga tarbitud ribalaiuse eest. Kokkuvõttes tuleks veebisaidi kiirlinkimise terviklikkuse säilitamiseks peatada kättesaadavus ja see juhend õpetab, kuidas seda hõlpsalt teha.

Ettevalmistus

Ettevalmistussegmendis võetakse mõlema hilisema meetodi üldised juhised. Ilmselt on Nginxi konfiguratsioonifaili avamiseks oluline, et serverile SSH kaudu juurde pääseks konsool ja korralik tekstiredaktor nanona. Kui mõlemad on omandatud, kasutage muudatuste avamiseks, salvestamiseks ja rakendamiseks järgmisi käske. Järgmised toimingud eeldavad, et kasutaja on juba SSH kaudu serverile juurde pääsenud.

nano / etc / nginx / sites-available / default

1. meetod: üldmeetod

Üldist meetodit on väga lihtne rakendada ja sellest aru saada, kuna see sisaldab lihtsalt asukohablokki. Lisaks blokeerib see ainult teatud failivormingute päringud selle asemel, et blokeerida kehtetute suunajate serverisse kõik päringud.

  1. Kopeerige järgmine koodilõik.
  2. Avage nginxi vaikefail, nagu on näha etapis “Ettevalmistus”.
  3. Kleepige kopeeritud koodijupp vaikefaili esimese asukohaploki alla. Nginxis on regulaaravaldise vahetundlik (~ *) alati prioriteetseks enne kaldkriipsu (/) ja seega täidetakse järgmine koodijupp enne ettepoole kaldkriipsu asukoha plokki.
  4. Salvestage ja sulgege vaikefail ning järgige muudatuste jõustumiseks 3–4 etappi „Ettevalmistus“ etapis.

Järgmises näites blokeerib see taotlused failidele css, gif, ico, jpeg, js, png, woff, woff2, ttf, ttc, otf ja eot. Asukoha ploki all on 10 tingimuslauset. Esimene tingimuslik lause võimaldab ressursse otse vaadata veebibrauseri kaudund ja 3rd plokid võimaldavad ressursse vaadata algse saidi kaudu (nii alasti kui ka www-alamdomeenid), ülejäänud plokid välja arvatud otsing?q ja viimane plokk võimaldavad otsingumootorite indeksoijatel ressurssidele juurde pääseda ja neid indekseerida, mis on väga oluline nii Google'i piltide kui ka piltide indekseerimiseks. Otsing?q võimaldab google'i vahemäluteenusel pääseda juurde ja salvestada ressursse koos lehega ning seeläbi saab lehele juurde pääseda otse Google'i otsingutulemite kaudu, kui sait on võrguühenduseta.

asukoht ~ * \.(css | gif | ico | jpeg | jpg | js | png | woff | woff2 | ttf | ttc | otf | eot) $
kui ($ http_referer !~ "^ $")
määra $ reegel_0 1 $ reegel_0;

kui ($ http_referer !~ "^ http: // nucuta.com /.* $ ")
määra $ reegel_0 2 $ reegel_0;

kui ($ http_referer !~ "^ http: // nucuta.com $ ")
sea ​​$ reegel_0 3 $ reegel_0;

kui ($ http_referer !~ * "google.")
määra $ reegel_0 4 $ reegel_0;

kui ($ http_referer !~ * "otsing?q = vahemälu ")
määra $ reegel_0 5 $ reegel_0;

kui ($ http_referer !~ * "msn.")
sea ​​$ reegel_0 6 $ reegel_0;

kui ($ http_referer !~ * "yahoo.")
sea ​​$ reegel_0 7 $ reegel_0;

kui ($ http_user_agent !~ * "googlebot")
sea ​​$ reegel_0 8 $ reegel_0;

kui ($ http_user_agent !~ * "msnbot")
sea ​​$ reegel_0 9 $ reegel_0;

kui ($ http_user_agent !~ * "slurp")
määra $ reegel_0 10 $ reegel_0;

if ($ rule_0 = "10987654321")
tagasipöördumine 403;
murda;

2. meetod. Valid_Referers meetod

Kehtivad viitajad on kõige mugavam ja laialdaselt tunnustatud meetod kehtetute viitajate hõlpsaks blokeerimiseks. See sisaldab eelmise meetodiga võrreldes ainult kahte rida ja on väga paindlik. Kuid seda on natuke raske seedida, kuna see hõlmab regulaaravaldisi ja teistsugust mehhanismi kehtetute viitajate päringute blokeerimiseks.

  1. Kopeerige järgmine koodilõik peamise asukohabloki vahele ja vahele.
  2. Asendage domeeninimede loend lubatud domeeninimedega, näiteks google, bing või oma domeenid jne.
  3. Salvestage ja sulgege vaikefail ning järgige muudatuste jõustumiseks 3–4 etappi „Ettevalmistus” etapis.

valid_referers pole ühtegi blokeeritud serverinime

*.linux.com linux.* www.linux.com / about /
~ \.Linux \.;
 
if ($ invalid_referer)
tagasipöördumine 403;

Sellel on peamiselt kaks koodiplokki, valid_referers ja muutuja if_referer tingimusväljend. Vaikimisi kasutatakse seda koodiplokki vahepeal ja asukohaploki alguses enne mis tahes muu koodi käivitamist, kuid seda saab kasutada ka mis tahes muus kohas, näiteks regulaaravaldistega asukohakoodiploki vahel tuvastada konkreetsed failivormingud, et blokeerimine oleks ülalnimetatud failivormingute jaoks asjakohane, nagu 1. meetodil. Nagu varem selgitatud, sisaldab meetod ainult kahte koodiplokki, esimene koodiplokk sisaldab 3 märksõna, esimene on “puudub”, kui viide väli puudub HTTP-päringus, teine ​​on “blokeeritud”, kui viiteväli kustutatakse mis tahes keskmise osapoole poolt, näiteks puhverserver, tulemüür jne., kolmas märksõna on kehtivate domeeninimede täpsustamiseks.

Kui domeeninimi algab sümboliga ~, peetakse seda regulaaravaldiseks ja seega saab kasutada väga keerukaid mustreid, kuid võib olla raske mõista, kui regulaaravaldisi ei tunta hästi. Kui valid_referers-lauses pole ükski tingimus täidetud, seatakse muutuja invalid_referer tühjaks stringiks, vastasel juhul on see seatud väärtusele 1, mida tähendab, kui tulevane taotlus ei sisalda viitevälja või kui nginx tuvastas, et viiteväli on eemaldatud tulemüüri või puhverserveri abil või kui viite väljale on määratud määratud domeenid (kehtiv domeeninimede loend), siis vale viitaja muutuja määratakse tühjaks stringiks ja seega selle tingimuseks, kui seda ei täideta. Kui päring pärineb domeenilt, mida pole avaldises valid_referers kehtiva domeenina määratletud, siis see blokeeritakse.

JÄRELDUS

Mõelge kindlasti sellele sisule ja vältige kiirlinkimist oma Nginxi hostitud saitidel.

Kuidas muuta hiire vasakut ja paremat nuppu Windows 10 PC-s
On üsna tavaline, et kõik arvutihiirte seadmed on ergonoomiliselt mõeldud parempoolsete kasutajate jaoks. Kuid on olemas hiire seadmeid, mis on spetsi...
Jäljendage hiireklikke, hõljutades hiirega klõpsutut hiirt Windows 10-s
Hiire või klaviatuuri kasutamine liigses kasutamises vales asendis võib põhjustada palju terviseprobleeme, sealhulgas tüve, karpaalkanali sündroom ja ...
Nende tasuta tööriistade abil lisage Windows 10-le hiire liigutused
Viimastel aastatel on arvutid ja operatsioonisüsteemid palju arenenud. Oli aeg, mil kasutajad pidid failihaldurites navigeerimiseks kasutama käske. Na...