Satu layanan privat dimuat melalui terowongan dan yang berikutnya kehabisan waktu, dan godaannya adalah membangun ulang seluruh profil klien. Layanan yang berfungsi lebih berguna sebagai kontrol daripada sebagai alasan untuk memulai dari awal. Layanan itu membuktikan bahwa satu tujuan, satu port, dan satu jalur otorisasi terpenuhi, dan tidak lebih dari itu.

Dua layanan pada gateway yang sama dapat dicapai melalui keluarga alamat yang berbeda, subnet yang berbeda, dan kebijakan yang berbeda.

Pisahkan alur yang berfungsi dari yang gagal

Perlakukan setiap layanan sebagai alurnya sendiri, bukan sebagai gejala VPN. Klien ilustratif dapat membuka portal.corp.example di 172.20.4.15:443 dan tetap gagal menjangkau basis data di 172.20.9.40:5432, karena keduanya adalah dua tujuan dengan dua rangkaian aturan. Tuliskan kedua baris sebelum mengubah apa pun, termasuk port dan protokol, karena aturan yang mengizinkan TCP 443 pada sebuah host tidak mengatakan apa pun tentang TCP 5432 pada host yang sama.

Baris yang gagal adalah yang perlu diselidiki. Baris yang berfungsi hanya memberi tahu di mana garis dasarnya, dan baris itu akan menjadi titik pembanding setelah setiap perubahan.

Bandingkan alamat sebelum membandingkan nama

Selesaikan setiap nama lengkap melalui kebijakan yang benar-benar digunakan aplikasi, lalu catat keluarga alamat yang dipilihnya. Satu nama dapat mengembalikan alamat IPv6 sementara yang lain mengembalikan IPv4, dan jawaban lama yang tersimpan di cache dapat mengirim permintaan ke alamat publik yang tidak ada hubungannya dengan layanan privat.

ip route get 172.20.4.15
ip route get 172.20.9.40
ip -6 route get 2001:db8:60::20

Pencarian itu menjawab pertanyaan sempit: rute mana yang akan dipilih host ini untuk tujuan itu, dengan tabel dan aturan kebijakan saat ini. Rute untuk 172.20.4.0/24 tidak mencakup 172.20.9.0/24, dan manajer jaringan kedua atau rute lokal dengan kekhususan lebih baik dapat diam-diam menimpa terowongan. Ulangi pencarian di dalam ruang nama atau dengan tanda yang digunakan aplikasi ketika itu berbeda dari shell Anda. Catat juga antarmuka tempat paket keluar, karena tabel rute dapat menyebut satu antarmuka sementara perutean berbasis kebijakan mengirim alur melalui antarmuka lain.

Rute yang cocok adalah syarat perlu, bukan izin. Rute itu memberi tahu bahwa paket punya tujuan, dan tidak mengatakan apa pun tentang apakah firewall, layanan otorisasi, atau host itu sendiri akan menerimanya.

Protokol dan tahap respons memberi tahu di mana ia berhenti

Balasan ping tidak membuktikan bahwa port basis data terbuka, dan halaman HTTPS yang berhasil tidak mengotorisasi berbagi file di mesin yang sama. Catat apa yang benar-benar kembali alih-alih meratakan setiap kegagalan ke dalam satu kategori. Waktu tunggu habis, reset, kesalahan identitas TLS, dan penolakan tingkat aplikasi masing-masing menunjuk ke lapisan yang berbeda.

Perbedaannya penting karena koreksinya menyimpang. Diam biasanya berarti masalah rute, firewall, atau terjemahan di jalur. Reset segera menunjukkan bahwa sesuatu mencapai host dan menolak port. Kesalahan sertifikat berarti koneksi tiba dan nama tidak cocok, yang merupakan masalah konfigurasi, bukan keterjangkauan. Penolakan aplikasi berarti jaringan melakukan tugasnya dan identitas ditolak sesudahnya.

Ketika sumber daya diterbitkan melalui gateway, bandingkan alamat sumber yang dilihat tujuan dengan sumber yang dianggap digunakan klien Anda. Permintaan yang berasal dari gateway itu sendiri bisa berhasil sementara permintaan yang sama dari klien gagal, karena keduanya datang dari alamat berbeda dan bertemu aturan berbeda.

Ubah satu variabel dan jalankan ulang kedua permintaan

Identitas adalah tempat terakhir orang melihat dan tempat pertama penolakan yang benar muncul. Login VPN, grup direktori, dan akun aplikasi adalah tiga identitas terpisah yang dapat menyimpang. Akses ke portal tidak pernah menyiratkan akses ke basis data di belakangnya, dan nama di satu direktori tidak membuat baris di direktori lain. Jika layanan berada di luar cakupan yang dimaksudkan pengguna, penolakan itulah sistem yang bekerja.

Mintalah pemilik sumber daya mengonfirmasi hak yang dimaksudkan alih-alih menambahkan rute lebar atau membuka grup sebagai uji coba. Memperluas jaringan untuk membuktikan suatu hal adalah cara diagnostik sementara menjadi paparan permanen, dan itu menghancurkan kontrol yang Anda mulai. Satu ketidaksesuaian yang terbukti per iterasi sudah cukup: rute yang hilang, keluarga alamat yang salah, port yang diblokir, atau keanggotaan grup yang hilang.

Setelah setiap perubahan, ulangi kedua permintaan dan simpan outputnya berdampingan. Penyelidikan berakhir ketika layanan yang gagal berfungsi di bawah kebijakannya sendiri sementara layanan yang berfungsi dan penolakan yang masih Anda harapkan berperilaku persis seperti sebelumnya.

Artikel terkait