Pradėkite nuo įrašo, kuris prasideda prieš pirmąjį bandymo paketą, kitaip skaitysite pokalbio vidurį. Jau vykstančios derybos rodo šifruotus mainus ir raktų atnaujinimus, ir nė vienas iš jų neatrodo kaip pradžia. Pradžia yra ta dalis, kurią galima iššifruoti be raktų, todėl ji taip gerai atsako į pasiekiamumo klausimus. Keturi patikrinimai iš eilės nuveda nuo naujo įrašo prie apginamo teiginio apie tai, kuri pusė nustojo kalbėti.

Pirma, patvirtinkite, kad įrašas prasideda nuo pradžios

Įrašas, pradėtas po tunelio pakėlimo, turės inkapsuliuotą duomenų srautą ir periodinius keepalive, ir abu yra arba užšifruoti, arba beveik tušti. Paleiskite klientą iš naujo ir įrašykite patį bandymą arba sąmoningai sukelkite naują ryšį, kol įrašas vyksta. Jei negalite sukurti naujo bandymo, pažymėkite tai savo pastabose, nes joks iššifravimas negrąžina pradžios, kurios niekada neįrašėte.

Apribokite įrašą dviem galiniais taškais ir UDP 500 bei 4500, kad failas liktų pakankamai mažas skaitymui. Užimtame hoste nefiltruotas įrašas palaidoja derybas po nesusijusiu srautu.

tcpdump -i any -n -s 0 -w fresh-ike.pcap 'udp port 500 or udp port 4500'

Išsaugokite failą, kai bandymas įdomus, nes tas pats įrašas atsako į abu tolesnius klausimus: kas buvo mainai ir ar kas nors grįžo. Pažymėkite jį pradžios laiku ir ta galinių taškų pora, pagal kurią filtravote. Įrašas be šių dviejų faktų po savaitės yra bevertis, kai adresai pasikeitė ir niekas neprisimena, kuris bandymas buvo įrašytas.

Antra, skaitykite antraštę prieš naudingąją apkrovą

IKE antraštė neša saugumo parametrų indeksus, mainų tipą ir pranešimo ID, o naujose derybose šios reikšmės yra išskirtinės. Iniciatorius išgalvoja ne nulinį SPI, pradinis prašymas neša nulinį atsakovo SPI, nes atsakymo dar nematėme, mainų tipas yra IKE_SA_INIT, o pranešimo ID yra nulis. Visa kita priklauso vėlesnei tos pačios derybų eigai arba visai kitam bandymui.

Šių pirmųjų mainų pasiūlymo, raktų mainų ir nonce apkrovos yra skaitomos atvirai. Skaitomumas nėra autentifikacija, ir šiuo metu nė viena pusė neįrodė savo tapatybės.

Privati Diffie-Hellman reikšmė niekada neperžengia laido, todėl įrašas neleidžia išvesti sesijos raktų. Autentifikacija vyksta kituose mainuose, apsaugota tuo, dėl ko susitarė pirmieji. Jei kas nors klausia, ar pusė tikra, šie mainai negali atsakyti į tą klausimą. Jie gali parodyti tik tai, kad abi pusės sutarė dėl pasiūlymo ir sukūrė bendrą paslaptį, kurios faile nėra.

Trečia, sugretinkite prašymą su jo atsakymu

Sugretinkite pagal SPI porą, mainų tipą ir pranešimo ID, tada patikrinkite atsakymo vėliavėlę. Pakartotinis siuntimas kartoja originalo pranešimo ID ir nėra antras prisijungimo bandymas. Paketų skaičiavimas vietoj mainų yra kelias, kuriuo sveikos derybos virsta fantominiu ciklu.

Atsakymas gali būti ir atmetimas: slapukų prašymas, pranešimas apie nepriimtiną grupę arba klaida dėl pasiūlymo. Tai teisėti atsakymai, ir jie reiškia, kad kelias veikia, o politika ne. Iššifruokite pranešimą, o ne laikykite kiekvieną atsakymą sėkme. Kai pranešimas įvardija grupę arba pasiūlymą, taisymas yra konfigūracijos pusėje, o ne užkardoje.

Kryptis taip pat svarbi. Prašymas be atsakymo ir atsakymas, kuris niekada nepasiekia kliento, yra skirtingi gedimai, ir tik antrasis atrodo kaip kliento pusės laiko limitas.

Ketvirta, atskirkite IKE nuo viso kito 4500 prievade

4500 prievadas neša tris dalykus, kurie apžvalgoje atrodo vienodai: IKE už keturių baitų nulinio non-ESP žymeklio, inkapsuliuotą ESP, kurio žymeklio vietoje yra ne nulinis SPI, ir trumpus keepalive. Būtent žymeklis atskiria IKE nuo inkapsuliuoto ESP, todėl perskaitykite tuos baitus prieš pavadindami srautą IKE. Įrašo etiketė, kuri rodo 4500, yra prievado numeris, o ne protokolas.

Inkapsuliuotas ESP yra užšifruota apkrova, kurios negalite interpretuoti be raktų, ir jo buvimas gali būti veikiančio tunelio ženklas, o ne gedimas.

Stebėkite abu prievadus tam pačiam bandymui, nes IKE gali persikelti į 4500 po NAT aptikimo, nors atsidarė 500. Tik 500 filtruotas pėdsakas atrodo tylus būtent tada, kai derybos pavyko ir persikėlė. Išplėskite filtrą ir perskaitykite tą patį laiko langą dar kartą, prieš darydami kokią nors išvadą iš nebuvimo.

Ką reiškia tyla viename stebėjimo taške

Atsakymo nebuvimas kliente įrodo tik tai, ką tas taškas stebėjo. Filtravimas, maršrutizavimas, neteisingas nuotolinis adresas, sustojusi paslauga ir protokolo neatitikimas duoda tą patį tuščią pėdsaką.

Susijęs ICMP unreachable prideda įrodymų, bet perskaitykite jame cituojamą paketą ir užsirašykite jį išsiuntusio įrenginio adresą.

Maršrutizatoriaus atmetimas yra kitas įvykis nei pusės grąžinta autentifikuota klaida, ir tik antrasis įrodo, kad paslauga gyva. Susiekite tą patį bandymą su serverio žurnalais arba patvirtintu stebėjimu, kad sužinotumėte, ar prašymas atėjo ir ar atsakymas išėjo. Laikykite įrašus apribotus ir privačius, nes skaitomi rankos paspaudimo laukai nepadaro likusio failo nekenksmingu. Vertas rezultatas yra viena sugretinta prašymo ir atsakymo pora arba viena dokumentuota spraga su įvardytu stebėjimo tašku.

Susiję straipsniai