Dalawang Pagtalon ng VPN nang Sunod-sunod: Sino Talaga ang Nakakakita ng Iyong Trapiko?
Ang magkakasunod na pagtalon ay nagde-decrypt at nagre-encrypt muli sa unang gateway; ang mga nakapaloob na pagtalon ay tinatanggal lamang ang panlabas na suson. Daanan ang dalawang disenyo at tingnan kung aling operator ang nagbabasa ng ano.
Bawat profile ng kliyente ay may isang server, kaya mula sa upuan ng gumagamit may isang tunel at isang lugar kung saan nagtatapos ang proteksyon. Ang nangyayari pagkatapos ng unang gateway ay desisyon sa disenyo na hindi nakikita ng kliyente, at ang dalawang karaniwang disenyo ay magkaiba ang inaasal sa ilalim ng inspeksyon. Sa magkakasunod na kadena ang unang gateway ay nagde-decrypt at nagre-encrypt muli. Sa nakapaloob na kadena inaalis nito ang panlabas na suson at ipinapasa ang panloob na tunel na hindi nito kayang buksan. Pareho ang bilang ng pagtalon sa dalawa, kaya ang pagkakaiba ay dapat iguhit at hindi bilangin.
Magsimula sa kliyente at pangalanan ang dalawang dulo
Magsimula kung saan nagsisimula ang gumagamit, sa profile ng koneksyon. Naglalaman ito ng isang malayong address, isang paraan ng pagpapatotoo at, kapag sinusuportahan ng disenyo, isang listahan ng ruta. Lagyan ng label ang panlabas na tunel mula sa kliyente hanggang gateway A at bigyan ito ng mga halimbawang address: ang address ng tunel ng kliyente 10.77.0.2, ang sa A 10.77.0.1 at ang pampublikong endpoint ng A 198.51.100.10, kinuha mula sa saklaw ng dokumentasyon ng TEST-NET-2 upang walang anuman sa halimbawa ang mabangga sa isang tunay na host.
Walang anuman sa profile na iyon ang nagbabanggit ng gateway B, at hindi iyon depekto. Ang pangalawang pagtalon ay pag-aari ng A, at ang tanging tungkulin ng kliyente ay ihatid ang trapiko sa A at tanggapin ang bumabalik. Kung ang A ay nagtatapos ng tunel, ipinapasa ito o nagbubukas ng bago ang tanong na sinasagot ng natitirang bahagi ng lakbay na ito, at iyon ang nagpapasya kung ano ang mababasa ng A.
Magkakasunod: nagde-decrypt ang A, pagkatapos ay nagre-encrypt muli
Sa magkakasunod na disenyo, dalawang beses tinatapos ng A ang trapiko. Inaalis nito ang proteksyon mula sa kliyente, nakukuha ang IP packet ng aplikasyon, at pagkatapos ay ipinapadala ang packet na iyon sa pangalawang tunel na ginagawa ng A patungo sa B. Sa pagitan ng dalawang operasyong iyon, ang packet ay nasa landas ng pagpapasa ng A bilang ordinaryong IP packet na naka-address sa isang pribadong destinasyon.
Nagbubunga iyon ng dalawang kahihinatnan na dapat sabihin nang tuwiran. Maaaring maglapat ang A ng patakaran sa panloob na packet, sa anyo ng mga ruta, tuntunin ng filter at pag-log ng pinagmulan at destinasyon, at kailangang panatilihin ng A ang dalawang set ng kredensyal: isa bilang server para sa kliyente at isa bilang kliyente ng B. Umiiral ang proteksyon sa bawat sandali, ngunit ang bagay na pinoprotektahan ay nagbabago ng pagkakakilanlan sa A.
Hindi sinusundan niyon na binabasa ng A ang plaintext ng aplikasyon. Kapag ang kliyente at serbisyo ay nagpapatakbo ng TLS at nagbe-verify ng mga sertipiko ng isa't isa, nakikita ng A ang isang stream ng TLS record at hindi isang nababasang kahilingan. Ang pagkumpirma kung saan nagtatapos ang proteksyong iyon ay nangangailangan ng pagtingin sa kadena ng sertipiko ng serbisyo, hindi sa diagram ng tunel.
Nakapaloob: inaalis lamang ng A ang panlabas na suson
Sa nakapaloob na disenyo, gumagawa muna ang kliyente ng panloob na tunel patungo sa B at pagkatapos ay dinadala ang tunel na iyon sa loob ng panlabas patungo sa A. Inaalis ng A ang panlabas na header, nakahanap ng panloob na tunel at ipinapasa ito nang hindi hawak ang mga susi nito, kaya ang panloob na proteksyon ay nagtatapos pa rin sa B.
Pagkatapos, ang uplink ng kliyente ay nagdadala ng dalawang suson, habang ang landas sa pagitan ng A at B ay nagdadala ng isa. Nakikita ng A ang mga panlabas na address ng panloob na tunel, sapat upang malaman na may trapiko at halos saan ito patungo, at hindi sapat upang basahin ang payload. Iyon ang buong pagkakaiba sa magkakasunod na kaso, at walang counter ng pagtalon ang nagpapakita nito. Ang magagawa pa ng A ay tanggihan ang pagpapasa ng hindi nito kayang basahin, at iyon ay laging bukas sa operator ng gateway na iyon.
May bayad ang pagkakaloob para sa katangiang iyon. Bawat suson ay nagdaragdag ng header overhead, kaya ang pagpaplano ng MTU at MSS ay nagiging sapilitan at hindi lamang maayos, at ang landas na gumagana sa isang suson ay maaaring tahimik na magtapon ng malalaking packet sa dalawa. Kailangan din ng bawat suson ang sariling pag-uugali sa muling pagkonekta at pagpapanatiling buhay, at ang pagkabigo sa isang suson ay mukhang bahagyang pagkawala sa pamamagitan ng isa.
Iguhit ang mga tagamasid, hindi lamang ang mga tunel
Ang mga tunel ang madaling bahagi ng guhit. Ang mga tagamasid ang paksa ng disenyo, kaya magsulat ng isang hilera bawat pananaw at punan kung ano talaga ang mababasa ng bawat isa.
| Vantage point | Serial chain | Nested chain |
|---|---|---|
| Client's access network | Outer tunnel only | Outer tunnel only |
| Operator of A | Inner IP packet between A and B | Outer addresses of the inner tunnel, not its payload |
| Path between A and B | Second tunnel | Second tunnel |
| Operator of B | Inner packet re-originated by A | Payload after the inner layer is removed |
| Service edge | Traffic from the exit address | Traffic from the exit address |
Dalawang hilera ang palaging pinagsasama: ang operator ng A at ang tagapagbigay ng tunel ng kliyente. Maaaring isa silang entidad, at ang magkahiwalay na pangalan ng gateway ay hindi sila ginagawang malaya. Ang malayang pagmamay-ari ay nangangailangan ng hiwalay na administratibong kontrol, hiwalay na kredensyal at hiwalay na pag-log.
Nakaligtas ang metadata sa dalawang disenyo. Ang oras, laki ng packet at bilang ng koneksyon ay nananatiling mapapansin sa bawat pagtalon, kaya ang dalawang pagtalon ay nagtataas ng gastos ng korelasyon sa halip na alisin ang signal. Ang disenyong nangangako ng kawalan ng nakikita ay dapat ihambing sa listahang iyon bago umasa ang sinuman dito.
Lakbayin ang mga landas ng pagkabigo bago pumili
Sadyang sirain ang mga bagay mula sa kliyente, sa pagkakasunod-sunod na makakaharap ng gumagamit. Magsimula sa interface at sa MTU nito, dahil nabibigo ang pagkakaloob sa laki ng packet nang matagal bago mabigo sa pagpapatotoo.
ip -4 addr show dev tun0
ip link show dev tun0 | grep mtu
ping -M do -s 1380 -c 2 10.77.1.1
Pagkatapos, kumpirmahin ang mga endpoint ng proteksyon sa halip na ipagpalagay ang mga ito. Hilingin sa serbisyo ang sertipiko nito mula sa loob ng alinmang tunel na bukas, at ihambing ang kadenang nakikita ng kliyente sa kadenang aktwal na inihaharap ng serbisyo. Ang gateway na muling pumipirma o nanghihimasok ay nagbabago ng sertipikong iyon, at ang inspeksyon ay nagiging nakikita sa isang utos.
openssl s_client -connect intranet.example.com:443 -brief < /dev/null
Tapusin sa matrix ng muling pagkonekta: bumabagsak ang tunel ng kliyente, bumabagsak ang tunel ng B, nagbabago ang landas sa pagitan ng A at B. Itala kung ano ang bumabalik at hindi, at kung ang panloob na koneksyon ay bumabagsak kailanman sa rutang labas ng nilalayong carrier nito. I-record ang mga address na ginamit ng bawat pagsubok, dahil ang pag-uulit nito sa ibang access network ay sumasagot sa ibang tanong. Ulitin din ang pagsubok ng MTU pagkatapos ng bawat muling pagkonekta, dahil ang nabagong landas ay maaaring magbaba ng magagamit na laki nang walang kahit isang linya ng configuration na gumagalaw.
Piliin ang magkakasunod kapag kailangang maglapat ng patakaran ang A sa panloob na packet, o kapag hindi kayang magpatakbo ang kliyente ng dalawang nakapatong na tunel. Piliin ang pagkakaloob kapag kailangang manatiling hindi mabasa ang panloob na payload sa A. Isulat ang pinili kasama ang mga tagamasid at mga numero ng MTU nito, at hindi na kailangang iguhit muli ng susunod na tao ang buong larawan upang sagutin ang isang tanong.