Apakah terowong VPN, dan di mana perlindungan berhenti
Terowong membalut paket terpilih dalam sampul kedua di atas pautan yang anda sudah ada. Ikuti satu permintaan dan lihat alamat mana yang sebenarnya direkodkan oleh laman.
Klien berkata bersambung, mangga dikunci, dan laman masih merekodkan alamat flat anda. Tiada apa yang gagal. Terowong tidak menggantikan Wi-Fi atau pautan mudah alih anda; ia meletakkan sampul kedua di sekeliling paket tertentu dan menghantar sampul itu melalui rangkaian yang anda sudah ada. Memahami helah ini kebanyakannya ialah menjejaki satu permintaan dan menyedari di mana sampul dibuka, kerana hampir setiap gejala yang mengelirukan, daripada alamat rumah yang bocor hingga muat turun besar yang tersekat, datang daripada sempadan itu.
Dua sampul, satu pautan fizikal
Komputer riba anda mengekalkan sambungan normalnya ke penghala, dan penghala mengekalkan sambungan normalnya ke pembekal. Tiada apa pada laluan itu berubah apabila terowong naik. Yang berubah ialah paket terpilih diserahkan kepada antara muka maya, dibalut dalam paket baharu yang dialamatkan kepada rakan VPN, dan dihantar sebagai trafik biasa melalui pautan fizikal.
Hujung penerima ialah peranti yang membuka sampul dan meneruskan paket asal ke arah destinasinya. Antara kedua-dua hujung, pemerhati melihat pengepala luar dan tiada apa tentang yang dalam kecuali protokol menyulitkannya, yang dilakukan oleh kebanyakan protokol pengguna dan tidak dikehendaki oleh teknik umum.
Sebab itu antara muka maya itu nyata dan mengelirukan pada masa yang sama. Ia wujud sebagai objek kernel dengan alamat dan unit penghantaran maksimum, dan sistem pengendalian menghalakan trafik ke dalamnya seperti ke mana-mana antara muka lain. Ia bukan kabel, dan kewujudannya hanya membuktikan bahawa sesuatu komponen dipasang. Sama ada pelayar anda menggunakannya ditentukan oleh laluan, bukan oleh antara muka yang hidup.
Perhatikan satu permintaan membuat perjalanan
Pilih destinasi dan tanya kernel antara muka mana yang akan digunakan. Perintah tunggal ini menyelesaikan kebanyakan perdebatan tentang sama ada terowong itu melakukan apa-apa:
ip route get 203.0.113.7
ip -brief addr show
ip -4 addr show dev wg0
Jika output laluan menamakan antara muka terowong, paket itu akan dibalut. Jika ia menamakan antara muka fizikal, ia tidak akan, dan berapa kali pun klien dimulakan semula perkara itu tidak berubah. Perintah kedua menunjukkan kedua-dua antara muka bersebelahan, dan begitulah anda mengesan terowong yang naik tanpa alamat atau dengan alamat daripada keluarga yang salah.
Kemudian lihat lompatan pertama dari dalam sampul, dan bandingkannya dengan lompatan pertama dari luar:
traceroute -n -m 3 203.0.113.7
sudo tcpdump -ni wg0 -c 5
Di dalam terowong, lompatan pertama ialah alamat dalam rakan, bukan penghala anda. Tangkapan pada antara muka terowong menunjukkan paket dalam, iaitu trafik yang dianggap oleh aplikasi sedang dihantarnya. Tangkapan pada antara muka fizikal pada masa yang sama menunjukkan paket luar, dan kedua-duanya bersama ialah demonstrasi paling jelas tentang apa yang sebenarnya dilakukan oleh terowong.
Tiga alamat, dan hanya satu dilihat oleh laman
Orang ramai sentiasa mengelirukan perkara ini, dan kekeliruan itu menghasilkan laporan kebocoran palsu. Ia medan berbeza dalam pengepala berbeza dengan jangka hayat berbeza.
| Address | Where it appears | Who can see it |
|---|---|---|
| Endpoint address | Outer header, the peer you connect to | Your access network and the path to it |
| Inner tunnel address | Inside the envelope, on the virtual interface | The peer, and anything the peer routes to |
| Exit address | Source of the packet that reaches the website | The website and its upstream |
Nombor di sebelah penyesuai maya ialah baris kedua. Ia bukan alamat yang direkodkan oleh laman, dan menyebutnya sebagai IP awam anda adalah jelas salah. Alamat yang dilihat oleh laman diberikan oleh pintu keluar, dan dalam terowong rangkaian peribadi mungkin tiada pintu keluar awam sama sekali, kerana destinasinya berada di dalam organisasi dan bukan di internet.
Terowong antara tapak ialah mekanisme yang sama dengan hujung yang berbeza. Dua penghala membalut trafik antara rangkaian, dan tiada peranti tunggal mempunyai klien dipasang. Sampulnya identik pada prinsipnya, sempadan pentadbirannya tidak.
Di mana sampul dibuka, dan apa yang bertahan daripadanya
Terowong berakhir pada rakannya. Jika penyulitan aplikasi itu sendiri menjangkau lebih jauh, ia bertahan melepasi sempadan itu, yang merupakan kes biasa bagi HTTPS: sesi pelayar berakhir di laman, jadi pintu keluar meneruskan teks sifer yang tidak dapat dibacanya.
Tiada apa lagi yang bertahan secara lalai. Permintaan tanpa penyulitan boleh dibaca di pintu keluar sama seperti ia boleh dibaca di Wi-Fi kafe, dan terowong tidak menambah perlindungan yang tidak pernah dimiliki oleh aplikasi. Begitu juga, peraturan tembok api dan dasar penghantaran pintu keluar menentukan apa yang berlaku seterusnya; jabat tangan yang berjaya ialah fakta tentang sambungan ke rakan, bukan tentang baki perjalanan.
Overhed ialah akibat lain yang kelihatan. Setiap paket membawa pengepala tambahan, dan pengangkutan luar boleh menambah pengepalanya sendiri, jadi muatan berguna setiap paket mengecil. Pada laluan dengan unit penghantaran maksimum tetap, itulah sebabnya terowong boleh melepaskan ping dan menyekat muat naik besar.
Periksa laluan yang sebenarnya diambil oleh aplikasi
Langkah terakhir ialah mengesahkan aplikasi tertentu, bukan mesin secara umum. Selesaikan destinasi, lihat laluan untuk alamat itu, dan kemudian perhatikan sambungan semasa ia terbuka:
getent hosts example.com
ip route get "$(getent hosts example.com | awk '{print $1; exit}')"
ss -tnp state established '( dport = :443 )'
Jika laluan menamakan terowong tetapi senarai soket menunjukkan sambungan dengan alamat sumber daripada antara muka fizikal, aplikasi terikat pada sesuatu yang khusus, atau terowong kedua bersaing untuk laluan lalai. Ini soalan penghalakan, dan ia boleh dijawab daripada tiga output ini dan bukan daripada skrin status klien.
Seni bina keselamatan RFC 4301 menerangkan versi lapisan IP bagi pembalutan ini untuk IPsec, dan logik lapisan yang sama terpakai kepada WireGuard dan OpenVPN. Sebaik sahaja anda boleh menunjuk kepada paket dalam dan paket luar sebagai objek berasingan, sebahagian besar tingkah laku terowong berhenti menjadi misteri dan menjadi jadual penghalakan yang boleh anda baca.