Satu Login VPN di PC Bersama: Siapa Lagi yang Mendapat Rute?
Login VPN mengautentikasi satu orang; rute yang dipasangnya adalah cakupan lain. Bandingkan tunnel seluruh host, per pengguna, dan per aplikasi di mesin bersama.
Berbagi stasiun kerja memunculkan pertanyaan yang tidak pernah harus dijawab laptop satu pengguna: setelah satu orang mengautentikasi tunnel, siapa lagi yang dapat menggunakannya? Login mengidentifikasi subjek, dan rute yang dipasangnya menggambarkan cakupan, dan keduanya bukan objek yang sama. Di antara keduanya ada sistem operasi, konfigurasi klien, dan apa yang dituntut layanan privat itu sendiri. Membandingkan titik penegakan adalah satu-satunya cara menjawab pertanyaan itu tanpa menebak.
Satu Login, Beberapa Cakupan
Autentikasi menjawab siapa yang diterima. Rute menjawab paket mana yang boleh keluar melalui tunnel. Otorisasi menjawab layanan mana yang akan menerima koneksi yang dihasilkan, dan tidak satu pun dari ketiganya menyiratkan yang berikutnya.
Tunnel seluruh host adalah default umum, dan itu membuat celahnya jelas. Rute berada di tabel kernel, jadi setiap proses yang memakai tabel itu dapat mencapai jaringan privat, termasuk proses yang dijalankan pengguna yang tidak pernah melihat dialog VPN. Itu bukan cacat pada tunnel; itulah arti rute seluruh sistem. Layanan privat tetap dapat menolak koneksi, karena itu keterjangkauan dan izin perlu jawaban terpisah.
Menuliskan keempat pertanyaan sebelum pengujian mencegah tinjauan runtuh menjadi salah satunya.
Di Mana Batasnya Sebenarnya
Empat susunan mencakup sebagian besar mesin: tunnel seluruh host, koneksi per pengguna, daftar izin per aplikasi, dan ruang nama jaringan atau mesin virtual terpisah.
Masing-masing menempatkan titik penegakan di tempat berbeda, dan perbedaannya lebih penting daripada labelnya. Koneksi per pengguna ditegakkan oleh izin profil, bukan oleh layar login desktop. Daftar izin per aplikasi ditegakkan di dalam klien, yang memutuskan apa yang akan dibawanya. Ruang nama atau VM menegakkan di batas antarmuka, sehingga proses di dalamnya sama sekali tidak melihat rute host. Jumlah layar login di mesin tidak mengatakan apa pun tentang salah satunya.
| Arrangement | Enforced by | Who can use the path |
|---|---|---|
| Host-wide tunnel | The routing table | Any local process using that table |
| Per-user connection | Profile permission list | Only the listed accounts |
| Per-app allowlist | The VPN client itself | Only the selected applications |
| Namespace or VM | The interface boundary | Only processes inside it |
Membaca tabel baris demi baris menunjukkan pertanyaan sebenarnya bukan apakah ada isolasi, melainkan di mana ia diterapkan.
Bandingkan Empat Titik Penegakan
Di Linux tabel rute adalah hal pertama yang diperiksa, karena tunnel seluruh host muncul di sana sedangkan ruang nama tidak. Menjalankan pencarian sebagai pengguna kedua adalah langkah yang dilewati orang; jawabannya berbeda dari yang mereka dapat sebagai diri sendiri, dan itu menjelaskan laporan.
Dua pemeriksaan berikutnya melihat kebijakan, bukan perutean. Aturan firewall yang cocok dengan UID berlaku untuk lalu lintas yang dibuat secara lokal, jadi dapat memisahkan dua pengguna di satu host bahkan ketika keduanya berbagi rute. Profil koneksi dengan daftar izin eksplisit ditegakkan oleh manajer jaringan saat aktivasi. Kedua pemeriksaan tidak menuntut tunnel diubah, karena itu keduanya layak dilakukan sebelum merancang ulang apa pun.
ip route get 10.40.2.10
sudo -u bob ip route get 10.40.2.10
nmcli connection show vpn-work | grep -i permission
sudo nft list ruleset | grep -n skuid
Jika pencarian kedua menunjukkan rute tunnel, batasnya bukan di tempat yang diasumsikan rancangan.
Aturan Sesi Bersamaan adalah Kontrol Terpisah
Gateway sering membatasi berapa sesi yang boleh dipegang satu akun, dan batas itu tidak ada hubungannya dengan pengguna lokal. Batas itu membatasi akun, jadi orang kedua yang masuk dengan kredensial sama dapat memutus tunnel orang pertama.
Baca kegagalannya sebelum menganggap masalah isolasi lokal. Batas sesi menghasilkan pemutusan di gateway, sedangkan masalah cakupan menghasilkan tunnel yang bekerja tetapi tidak membawa lalu lintas pengguna lain. Kedua gejala itu mengarah ke perbaikan yang sangat berbeda. Simpan pesan klien yang tepat, karena biasanya menyebut aturannya. Mintalah alur kerja yang disetujui kepada pemilik profil daripada mengakali batas itu.
Mesin virtual tidak membebaskan siapa pun dari aturan itu, dan ia menambahkan rancangan jaringan serta kredensialnya sendiri.
Uji Konteks yang Anda Pedulikan
Uji pengguna dan aplikasi yang dimaksud, lalu uji konteks yang seharusnya ditolak. Tinjauan yang hanya membuktikan kata sandi asli berfungsi telah menguji autentikasi dan bukan yang lain.
sudo -u bob curl -sS -m 5 https://intranet.internal/health
wg show
ss -tnp | grep -E ':443|:51820'
Catat titik penegakan di samping setiap hasil: tabel rute, aturan UID, izin profil, atau kebijakan sesi gateway. Catatan itu membuat perubahan berikutnya dapat ditinjau. Ia juga menghentikan pertanyaan yang sama dibuka kembali setiap kali seseorang menyadari layar login kedua. Keterjangkauan bukan otorisasi, dan tidak satu pun dari keduanya adalah isolasi.