Trys žmonės prašo to paties tais pačiais žodžiais: užblokuoti prieigą prie vieno paslaugos vardo. Vienas turi omenyje, kad naršyklė neturi atidaryti svetainės, kitas – kad stalinis balso klientas neturi pasiekti savo serverio, o trečias – kad rangovų grupė neturi naudotis tam tikra vidine programa. Sakinys identiškas, o vykdymo mechanizmai beveik neturi nieko bendra.

Sluoksnį rinkitės pagal identifikatorių, kurį jis iš tikrųjų mato, o paskui pagal klientus, kuriuos jis apima. Pradėti nuo ugniasienės komandos, kurią jau pažįstate, yra kelias, kuriuo taisyklės galiausiai nieko neužblokuoja arba užblokuoja per daug.

Vardas nėra tapatybė, kurią gali patikrinti kiekvienas sluoksnis

Netfilter ir panašūs paketų filtrai mato adresus, protokolus ir prievadus. Jie nemato hosto vardų, o kol paketas juos pasiekia, vardas jau išspręstas. Taisyklė, parašyta prieš adresą, yra taisyklė apie tą adresą, nesvarbu, kokį vardą naudotojas įvedė, kad jį pasiektų.

DNS politika yra anksčiau kelyje ir mato užklausą, kuri yra kitas objektas nei po jos einantis ryšys. Ji valdo atsakymus, kuriuos grąžina kontroliuojamas sprendėjas, o ne jau atidarytus ryšius ir ne klientus, sukonfigūruotus apeiti tą sprendėją. Išspręstas adresas taip pat gali pasikeisti tarp politikos peržiūros ir kitos užklausos, todėl DNS atsakymas nėra ilgalaikis autorizacijos pareiškimas.

Aukštesni sluoksniai mato daugiau konteksto ir apima mažiau klientų. Šis mainai yra visa tema, ir jie paaiškina, kodėl nė viena lentelės eilutė niekada nėra teisingas atsakymas. Pasirinkite eilutę, kuri mato identifikatorių, apie kurį iš tikrųjų yra jūsų politika. Tada priimkite aprėptį, kurią ši eilutė reiškia.

Ką gali identifikuoti kiekvienas sluoksnis

Skaitykite lentelę nuo vidurinio stulpelio į išorę: identifikatorius, kurį sluoksnis mato, nulemia politiką, kurią jis gali sąžiningai vykdyti.

LayerIdentifier it seesWhat it cannot see
Packet filteraddress, protocol, portthe name, or which other services share that address
DNS policythe queried name and the answer handed backconnections made by clients that ignore the resolver
Managed browsersupported URL patterns on managed profilesnon-browser clients, or unmanaged devices
CONNECT proxyhost and port for tunnelled requeststhe path inside an encrypted request

Sluoksnis priklauso politikai tik tada, kai jo matomas identifikatorius sutampa su identifikatoriumi, kurį valdote. Lentelė taip pat paaiškina, kodėl viename sluoksnyje parašyta taisyklė retai perkeliama į kitą, iš naujo nenusprendus, ką ji saugo.

Kur akivaizdi taisyklė žlunga

Adreso taisyklė yra visiškai teisinga paslaugai su atskiru adresu, kurį kontroliuojate, ir ši nuosavybė turėtų būti įrašyta politikoje. Ji yra visiškai neteisinga viskam, kas yra už bendro turinio pristatymo adreso, kur ta pati taisyklė paliečia nesusijusias paslaugas ir atnaujintas DNS atsakymas nepaverčia taisyklės hosto vardo autorizacija.

Valdomos naršyklės politika išreiškia žiniatinklio apribojimą tiesiau nei nukopijuotas adresų sąrašas, tačiau ji taikoma naršyklėms ir profiliams, kuriuos valdo valdymo sistema.

Toji naršyklės taisyklė nieko nedaro balso klientui, siunčiančiam UDP į kitą hostą, o jos šablonus apibrėžia tas produktas, o ne kitur pasiskolintos pakaitos simbolių konvencijos. CONNECT tarpinis serveris taip pat gauna hostą ir prievadą tuneliuotai užklausai ir negali perskaityti kelio užšifruotos sesijos viduje. Kurkite taisyklę pagal tai, ką atskleidžia protokolas. Tada užrašykite, ką ji palieka neapimta, nes būtent ta spraga yra kitos užklausos šaltinis.

Rinkitės pagal klientus, o ne pagal komandą

Paklauskite, kuriuos klientus politika turi apimti ir kurių gali praleisti. Valdomos naršyklės politika apima tai, ką pasiekia valdymo sistema, ir sustoja ties naršyklės riba. Sprendėjo politika apima viską, kas naudoja jūsų sprendėją, tai platesnė aibė, ir ji atvirai žlunga tiems, kas to nedaro.

Jūsų valdomai paslaugai autorizacija programoje yra stipresnė už bet kokią tinklo ribą, nes ji seka paskyrą, o ne kelią. VPN maršrutas yra pasiekiamumas ir nieko daugiau: galėjimas siųsti paketą paslaugai nėra leidimas ja naudotis. Kai svarbus identifikatorius yra naudotojas arba kanalo leidimas, vykdykite jį ten ir laikykite tinklo taisyklę antruoju sluoksniu.

Rašykite taisyklę ištekliaus terminais

Apginama politika įvardija išteklių, tapatybes, apimties programas ir kelią, kuris juos neša, įskaitant abi naudojamas adresų šeimas. Ji taip pat nurodo, kas atsitiks bendrai infrastruktūrai, kurią taisyklė palies atsitiktinai.

Tokia formuluotė sukuria sprendimą, kurį kas nors vėliau galės audituoti. Taisyklė, pagrįsta šiandienos išspręstu adresu, sukuria incidentą pirmą kartą pasikeitus adresui, ir niekas negalės paaiškinti, kodėl blokavimas kada nors buvo teisingas.

Susiję straipsniai