Miks jagatud TAP VPN vajab endiselt portaalil HTTPS-i
TAP VPN autendib partnerit, mitte selle taga olevat teenust. Hoidke hostinime valideerimine portaalis ja isoleerige naabrid, keda te ei usalda.
Kahel seadmel on kehtivad VPN-i volitused ja nad jagavad ühte sillatud Etherneti segmenti. Ainult üks neist peaks vastama kontoriportaali eest ja teine saab sellel segmendil endiselt portaali aadressi nõuda. Tunnel tegi oma töö: see autentis mõlemad partnerid ja krüpteeris iga tee serverini. Mida see aga ei teinud, oli tõendada, kumb neist omab teenuse nime, ja just see lünk on põhjus, miks portaal vajab endiselt kehtivat sertifikaati.
Mida VPN tegelikult autendib
VPN-i käepigistus vastab ühele küsimusele: milline partner lõpetas selle tunneli ja millise võtmematerjaliga. See vastus kehtib partneri ja ühenduse kohta ega ütle midagi teenuste kohta, mida see partner hiljem pakub. TAP-segmendis ei ole partner isegi mitte üks aadress, sest ta võib esitada ükskõik millise MAC-i ja IP, mida sild on valmis õppima. Autentimine lõpeb tunneli lõpp-punktis, mitte rakenduses.
Eraldage kolm küsimust, selle asemel et need üheks kokku suruda. Igal on oma mehhanism ja oma rikkerežiim.
| Question | Answered by |
|---|---|
| Which peer sent this packet? | VPN transport authentication |
| Which device owns this IPv4 address? | ARP, trusted only as far as the segment |
| Which service am I talking to? | Application TLS and hostname validation |
Juurutuses võib olla täiuslikult autenditud tunnel ja selle taga täiesti autentimata teenus. Samuti võib hostil olla valideeritud sertifikaat, mille teise kihi aadressi nõuab teine partner, ja seetõttu kuuluvad mõlemad kontrollid disaini, mitte üks teise asemele. Tabel on kogu argument kolmes reas.
ARP jagatud segmendis ei ole kataloog
ARP vastendab IPv4-aadressi MAC-iga kohalikus lingis ja võtab vastu vastuseid kellelt iganes selles lingis. Lubavas sillatud segmendis võib partner nõuda aadressi, mis kuulub teisele seadmele, ja sild edastab kaadrid sellele, kes vastas viimasena. Iga kliendi tee krüpteerimine serverini ei muuda seda, sest kaadrid dekrüpteeritakse enne sillani jõudmist. ARP-i usalduspiir on segment, mitte tunnel.
Vaadake, mida host tegelikult õppis: ip neigh show loetleb praegused vastendused ja nende oleku, ning kirje, mis tavakasutuse ajal kahe MAC-aadressi vahel vahetub, on sümptom, mida tasub uurida, mitte kõrvale jätta. Terves väikeses segmendis püsivad sellised kirjed pikka aega stabiilsed.
Partnerite isolatsioon ja silla poliitika on täpselt selle juhtumi jaoks. Marsruuditud disain on tavaliselt parem vastus, kui teenus on ainult IP ja seadmetel pole mingit põhjust teineteise kaadreid näha.
Hoidke sertifikaadi valideerimine seal, kus on teenus
Rakenduse TLS vastab küsimusele, millele tunnel ei saa: kas see on see teenus, kuhu ma jõuda tahtsin. Brauser kontrollib hostinime sertifikaadi vastu ja see kontroll on ainus osa ahelast, mis nimetab portaali, mitte partnerit.
Uurige, mida server esitab, enne kui otsustate, et hoiatus on kosmeetiline. openssl s_client -connect portal.example.internal:443 -servername portal.example.internal prindib ahela ja subjekti alternatiivsed nimed. Kui teie sisestatud nime selles loendis pole, on hoiatus õige ja sertifikaat on see, mida tuleb parandada. Kasutajate õpetamine sellest läbi klõpsama muudab toimiva kontrolli dekooriks.
OpenVPN-i silla juhend kirjeldab Etherneti mudelit ja sellega seotud poliitikavalikuid ning on õige viide selle kohta, mida segment peaks lubama. Lugege seda enne sillareegli lõdvendamist, sest kirjeldatud mudel on see, mida eeldab iga ülaltoodud kontroll.
Otsustage, kas need partnerid peaksid üldse segmenti jagama
Odavaim parandus on tavaliselt lõpetada teise kihi jagamine, kui nõue on ainult IP-kättesaadavus. Marsruuditud VPN annab igale kliendile oma aadressi, eemaldab jagatud leviedastusdomeeni ja muudab partneritevahelise liikluse poliitikaotsuseks vaikeväärtuse asemel. Siis on portaalil üks aadress, mida kaitsta, ja ühtki naabrit, kes seda nõuda saaks.
Kui segment peab jääma, kontrollige serveripoolset seadet, mis lubab klientidel teineteiseni jõuda: grep -n client-to-client /etc/openvpn/server.conf. Kui see on välja lülitatud, liigub kliendiliiklus serveri kaudu ja seda saab seal filtreerida. Kui see on sisse lülitatud, vahetavad partnerid kaadreid otse silla kaudu ning teie filtreerimispunktid on sild ja hosti tulemüür.
Kirjutage üles, millistele kaitsetele iga host tegelikult toetub: tunneli autentimine, segmendi isolatsioon või rakenduse TLS. Host, mis toetub kõigile kolmele, on korras. Host, mis toetub esimesele ja eeldab, et teised kaks tulid sellega kaasa, on see, mis lõpuks serveerib vale sisu.