Kažkas nori pažiūrėti, ką klientai siunčia per tunelį, dokumentacijoje randa prisijungimo kabliuką ir pradeda rašyti scenarijų, kuris niekada negaus nė vieno paketo. Kabliukas tikras ir naudingas, bet jo darbo vienetas yra sesija, o ne baitas. Pasirinkti tinkamą komponentą reiškia palyginti tris vietas, kuriose gali vykti darbas, o lemiamas klausimas yra tai, kokį vienetą kiekviena jų iš tikrųjų mato.

Ką kabliukas gauna ir ko niekada negauna

Kliento prisijungimo kabliukas paleidžiamas vieną kartą, kai autentifikuotas klientas nustato sesiją, serverio proceso kontekste, su dokumentuotais argumentais ir aplinkos reikšmėmis, tokiomis kaip bendrasis vardas ir priskirtas adresas. Jis gali rašyti kiekvieno kliento konfigūraciją, priimti priėmimo sprendimą, skirti išorinį išteklių arba įrašyti, kad ryšys įvyko. Ko jis negali, tai stebėti srautą, nes kai pirmas paketas kerta tunelį, kabliukas jau grįžo.

Tai ne apribojimas, kurį reikėtų apeiti. Sesijos atgalinis iškvietimas, kuris bandytų apdoroti srautą, turėtų veikti visą ryšio gyvavimo laiką, o demono scenarijų sutartis nėra sukurta tokiai formai. Paklauskite, kam kabliukas skirtas, prieš nuspręsdami, kad jis jums trukdo.

Pakartotiniai prisijungimai taip pat svarbūs. Klientas, kuris atsijungia ir vėl prisijungia, yra nauja sesija, todėl viskas, ką kabliukas skiria, turi būti idempotentiška arba susieta su atsijungimo įvykiu, kuris sutvarko. Būsena, kuri nuteka kiekvieno prisijungimo metu, yra įprasta pirmoji klaida projektuojant su kabliuku.

Sesijos politika priklauso kabliukui

Priėmimas yra natūralus kabliuko darbas. Jūs žinote, kas prisijungė, iš kur ir su kokiu sertifikatu, ir galite nuspręsti, ar ši sesija turi tęstis, ar būti atmesta. Tas sprendimas pigus, įvyksta vieną kartą ir nereikalauja žiūrėti nė į vieną apkrovos baitą.

Konfigūracijos priskyrimas telpa į tą pačią formą. Kabliukas gali pasirinkti kliento adresą, perduoti šiai tapatybei tinkamus parametrus arba įrašyti fragmentą, kurį serveris skaito šiam klientui. Kadangi sprendimas priimamas kiekvienai sesijai, jis išlieka suprantamas, kai kas nors nepavyksta ir kažkas turi paaiškinti, kodėl konkretus klientas gavo konkretų adresą.

Įrašymas yra trečiasis atitikimas. Audito įrašas, sakantis, kad sesija buvo priimta, su jos tapatybe ir laiku, priklauso būtent čia. Tai ne srauto žurnalas ir neturi apsimesti juo. Jei vėliau kas nors paklaus, ką klientas veikė tunelio viduje, atsakymas turi ateiti iš kitur.

Darbas su paketais priklauso paketų keliui

Jei reikalavimas yra matyti arba keisti skrydžio metu esančius baitus, komponentas turi būti perdavimo kelyje: ugniasienės taisyklė su eile, srauto valdymo kabliukas arba naudotojo erdvėje veikiantis peradresuotojas. Tie mechanizmai mato paketus, ir jie turi savo būseną, savo gedimo režimus ir savo našumo profilį.

Redaguoti apkrovą tame sluoksnyje sunkiau nei ją skaityti. Pakeitus vieną baitą gali tapti negaliojantis ilgio laukas, kontrolinė suma arba protokolo būsenos mašina, o trečiojo sluoksnio tunelis nuo nieko iš to neapsaugo. Tai tik reiškia, kad išorinės antraštės nėra tos, kurias redaguojate. Suplanuokite tą taisymą prieš kam nors pažadėdami turinio perrašymą.

Sąsajos fiksavimas yra pigiausias šios kategorijos įrankis, ir tai stebėjimas, o ne redaktorius. Žmonės painioja abu, nes abu apibūdinami kaip srauto matymas, bet fiksavimas sukuria failą, o paketų kelias sukuria sprendimą.

Programos pakeitimai priklauso programai

Kai tikslas yra pakeisti, ką užklausa turi arba kaip formuojamas atsakymas, tinkama vieta yra pati paslauga arba tarpinis serveris, kuris sąmoningai užbaigia protokolą. Tie komponentai jau supranta užklausas, atsakymus ir autentifikavimą, kurio tikisi programa, ir būtent to konteksto paketų filtrui trūksta.

Adresų vertimas yra šio sąrašo apačioje dėl priežasties. Jis perrašo adresus ir prievadus ir palieka apkrovą ramybėje, todėl tai nėra turinio įrankis, kad ir kaip dažnai jis pasirodytų recepte, kuriame taip pat minimas turinys.

Šių ribų atskyrimas yra tai, kas daro dizainą paaiškinamą. Sesijos politika kabliuke, paketų apdorojimas paketų kelyje ir programos pakeitimas ten, kur protokolas sąmoningai užbaigiamas: trys sakiniai, kurie taip pat tarnauja kaip peržiūros kontrolinis sąrašas.

Kur TLS vis dar užbaigia pokalbį

Vienas dalykas išgyvena visa tai, kas išdėstyta aukščiau: srautas tunelio viduje, kuris neša HTTPS, išlaiko savo transporto šifravimą. VPN raktų turėjimas duoda jums vidinį IP paketą ir neduoda sesijos raktų svetainei kitame gale.

Todėl kabliukas negali tikrinti turinio net iš esmės, ir todėl paketų kelias mato šifruotą tekstą, nebent diegimas sąmoningai užbaigia vidinį TLS. scenarijų sutartis aprašo, kas kabliukui duodama; jis nieko nesako apie apkrovą, nes nėra ką duoti.

Susiję straipsniai