Sakelar keamanan VPN: lalu lintas apa yang diblokir dan kapan
Penyambungan ulang memulihkan terowongan; sakelar keamanan memutuskan apa yang terjadi selama terowongan hilang. Uji terpisah putus koneksi, pemutusan manual, keluar dari aplikasi, dan pergantian jaringan.
Dua fitur dijelaskan dengan kata yang sama dan melakukan pekerjaan berbeda. Penyambungan ulang otomatis mencoba mengembalikan terowongan, dan bisa berhasil dalam satu detik sementara permintaan gagal di sela itu. Sakelar keamanan memutuskan apa yang terjadi pada lalu lintas selama sela itu. Membaca klien seolah keduanya satu pengaturan adalah cara orang akhirnya memercayai ikon alih-alih kebijakan.
Memblokir dan menyambung ulang adalah keputusan terpisah
Satu klien memblokir hanya ketika kehilangan koneksi tidak terduga, lalu menyambung ulang dan melepas blokir. Klien lain menahan blokir tingkat sistem sampai seseorang mengubah pengaturan dengan tangan, dan klien ketiga menganggap pemutusan yang disengaja sebagai izin memulihkan akses biasa. Ini tiga perilaku berbeda, dan dokumentasi vendor menyebut mana yang diterapkan versi Anda.
Mengimpor profil tidak memutuskan pertanyaan itu. Profil server yang sama dimuat ke dua klien dengan perilaku pemblokiran berlawanan, karena profil membawa pengaturan, bukan janji. Itu juga sebabnya kotak centang di desktop dan sakelar di ponsel dengan label serupa bisa menerapkan aturan berbeda. Baca deskripsi di samping kontrol pada platform Anda, lalu uji apa yang dilakukannya.
Profil yang sama berperilaku berbeda di dua klien
Pengaturan aplikasi OpenVPN Connect menjelaskan mode terowongan yang menahan lalu lintas biasa hanya selama klien melaporkan status jeda atau menyambung ulang, yang lebih sempit daripada janji umum tentang setiap peristiwa di setiap platform. Baca status yang terdaftar, bukan nama produk. Deskripsi yang ditulis untuk satu versi klien tidak berlaku untuk klien vendor lain.
Android menampilkan kata yang sama untuk dua kontrol, karena VPN selalu aktif dan pemblokiran koneksi tanpa VPN didokumentasikan terpisah. Klien desktop dengan kotak centang bernama serupa bisa menerapkan sesuatu yang lebih sempit atau lebih luas daripada keduanya. Anggap label yang sama di dua menu sebagai kebetulan sampai kedua deskripsi dibaca. Perangkat terkelola menambah lapisan ketiga, karena profil perangkat dapat memaksakan pengaturan yang tidak dilihat pengguna atau tidak dapat dibatalkannya.
Pengaturan platform yang tampak serupa tidak setara
Bandingkan kontrol yang Anda lihat dengan kebijakan yang benar-benar berlaku. Pada perangkat terkelola, sakelar yang terlihat mungkin abu-abu, atau mungkin aktif sementara profil tingkat lebih tinggi memaksakan kebalikannya. Mintalah kebijakan yang berlaku, bukan yang lokal, dan dapatkan jawabannya secara tertulis.
Catat apa yang diklaim setiap lapisan sebelum Anda menguji apa pun, karena keduanya sering tidak cocok dan ketidakcocokan itu mudah hilang begitu pengujian dimulai. Perangkat yang memblokir dengan benar selama pengujian mungkin memblokir karena alasan yang tidak didokumentasikan siapa pun.
Jalankan satu peristiwa sekaligus dan catat kodenya
Uji satu peristiwa per proses, dengan permintaan yang tidak berbahaya, dan buat setiap percobaan sebagai permintaan baru, bukan halaman yang mungkin sudah tersimpan di cache. Perintah di bawah menurunkan terowongan, meminta halaman, dan menunjukkan apakah antarmuka kembali.
ip link set tun0 down
curl -s -o /dev/null -w "%{http_code}\n" --max-time 5 https://example.com
ip -brief address show tun0
Tabel memetakan setiap tindakan ke pengamatan yang penting dan ke bukti yang layak disimpan. Permintaan yang gagal dalam batas waktu memberi tahu bahwa blokir bekerja; permintaan yang lolos memberi tahu bahwa lalu lintas menemukan jalur lain, yang mungkin rute yang dikecualikan dan bukan blokir yang dimatikan. Ulangi seluruh rangkaian setelah pembaruan perangkat lunak yang berarti atau perubahan kebijakan perutean, karena keduanya dapat mengubah cabang tanpa satu pun pengaturan terlihat bergerak. Pada akhirnya Anda menginginkan perilaku kegagalan yang dapat diprediksi, bukan ikon yang menenangkan.
| What I do | What I watch | Evidence to keep |
|---|---|---|
| Bring the tunnel down by hand | Whether a fresh request fails at once | The HTTP code and the client state at that second |
| Choose Disconnect in the client | Whether ordinary access returns on purpose | The same request succeeding with no tunnel up |
| Quit the app, then reboot | Whether the block outlives the client | A request made from a clean boot |
| Move from Wi-Fi to cellular | Whether DNS and IPv6 follow the policy | The resolver answer, the route table and the code again |
Pengecualian, portal tamu, dan apa yang tidak bisa dilakukan blokir
Akses ke jaringan lokal adalah pengecualian yang lazim, dan itu mengubah cakupan janji. Klien dapat menjangkau printer di subnet yang sama sambil memblokir semua hal lain, yang wajar di rumah dan dipertanyakan di jaringan tamu. Putuskan apakah pengecualian itu diinginkan sebelum insiden menemukannya untuk Anda.
Blokir ketat juga membuat masuk ke portal jaringan tamu menjadi canggung, karena portal itu justru lalu lintas langsung yang keberadaan blokir adalah untuk menghentikannya. Pelajari cara yang didukung untuk mengesahkan jaringan, lalu pulihkan kebijakan dengan sengaja alih-alih mematikan kontrol sampai halaman termuat. Simpan jawaban resolver dan tabel rute dalam catatan yang sama, seperti di bawah. Yang tidak bisa dilakukan sakelar keamanan adalah membuat layanan menjadi anonim, karena memblokir lalu lintas di luar terowongan tidak mengatakan apa pun tentang apa yang terjadi di dalamnya.
resolvectl query example.com
ss -tunp | grep -v tun0