IPsec läbilase koduruuteris: mida see tegelikult teeb
Lüliti laseb ühe protokolli aadressitõlkest läbi; see ei registreeri ruuterit kliendina. Salvestage vahetus, lugege assotsiatsioonid ja otsustage siis.
Ruuteri läbilaske lülitid on edastusmööndused nende taga olevale seadmele, mitte VPN-teenused. Need ei registreeri ruuterit kliendina, ei hoia mandaate ega aja iga kodu seadet kaugväljundi kaudu. See, mida need teevad, on kujundada, kuidas üks protokoll läbib aadressitõlke ja filtrid. Kui see on selge, on lülitit lihtne testida ja lihtne välja jätta.
Mida ruuter tegelikult teeb
Ruuter seisab kliendi ja IPsec-vastaspoole vahel ning edastab pakette, mida see ei olnud kunagi mõeldud mõistma. Tootjad rakendavad funktsiooni vähemalt kolmel viisil: protokolliabiline, mis jälgib või kirjutab olekut ümber; filtri erand, mis lõpetab ESP-st loobumise; või vanematele klientidele suunatud ühilduvusrežiim. Veebiliidese silt ütleb harva, milline neist kolmest teil on. Seda ütlevad ainult püsivara märkmed või paketipüüdmine.
Abiline võib asju ka hullemaks teha. Vanemale voolule kirjutatud abi segab mõnikord klienti, mis juba käsitleb tõlget õigesti. Kui kaasaegne klient töötab valikuga väljas, on see parem seadistus jätta see välja.
Läbilase ei anna ruuterile kunagi vastaspoolte võtmeid. See näeb endiselt väliseid aadresse ja porte ning rakendab neile endiselt oma edastuspoliitikat.
NAT ja NAT-T otsustavad tee
IPsec ei ehitatud aadressitõlget üle elama, seega lisasid standardid ümbrise. NAT traversal kapseldab ESP UDP sisse, lastes tavalisel NAT-tabelil voolu kanda, ja läbirääkimine lepib selle lülituse kokku IKE ajal (RFC 3948). IKE ise kasutab UDP 500, kapseldatud tee kasutab tavaliselt UDP 4500.
Seetõttu ei piisa tõlgitud teel tulemüürireeglist, mis lubab ainult protokolli 50. 4500 blokeerimine rikub juhtumi, mille jaoks ümbris olemas on, ja 500 blokeerimine peatab läbirääkimise enne, kui ükskõik milline tunnel tekib. Mõlemad suunad loevad, sest olekut jälgiv ruuter lubab vastust tavaliselt alles pärast päringu nägemist. Pordini jõudmine ei ole sama mis autentimise lõpetamine, ega ka kaitstud liikluse edastamine.
Vanemad lahendused erinevad piisavalt, et nende jaoks kirjutatud juhend võib eksitada. Kui klient pakub mõlemat režiimi, testige seda, mida teie vastaspool dokumenteerib, mitte seda, millel on rohkem otsingutulemusi.
Leidke nurjuv etapp
Jagage probleem läbirääkimiseks, autentimiseks, lapse kaitseks ja sisemiseks edastuseks, seejärel koguge tõendeid ühe etapi kaupa. Taaskäivitus, mis tulemust ajutiselt muudab, tõestab vaid, et mingi olek oli mängus.
sudo tcpdump -ni any 'udp port 500 or udp port 4500'
ip xfrm state list
ip xfrm policy list
Püüdmine näitab, kas vahetus jõuab vastaspooleni ja kas vastused tulevad tagasi, mis eraldab filtreerimisprobleemi mandaadiprobleemist. Olekuloend näitab loodud turvaassotsiatsioone, seega tühi loend pärast katset viitab läbirääkimisele, mitte marsruutimisele. Poliitikaloend näitab, millised selektorid on paigaldatud, ja just seal jäetakse alamvõrguväline sihtkoht välja. Lugege mõlemad xfrm-väljundid enne ruuteri puudutamist, sest need kirjeldavad, mida host arvab, mitte mida ruuter lubab.
Kui paketid väljuvad ja midagi ei tule tagasi, viige püüdmine ruuteri WAN-küljele. Kahe püüdmise võrdlemine lokaliseerib ärajätmise ilma oletamata.
Lülitage välja see, mida ei vaja
Üks töötav sülearvuti ei tõesta, et ruuter teenindab korraga mitut klienti. Iga klient loob oma tõlkeoleku ja oma läbirääkimise ning mõned abilised jälgivad ainult ühte voolu. Testige korraga vajalike seansside arvu võrkudest, mida te tegelikult kasutate. Kui teine klient ebaõnnestub, samal ajal kui esimene töötab, on see leid, mitte kõikuv tunnel.
Hoidke valik sisse lülitatud ainult siis, kui püüdmine näitab, et seda on vaja. Kirjutage püsivara versioon tulemuse kõrvale, sest need käitumised muutuvad väljalasete vahel. Eesmärk on kliendi tunnel, mille te kontrollisite, mitte lüliti, mille lootusega sisse lülitasite.