Server yang dihosting dengan VPN terpasang akhirnya menyimpan tiga alamat, dan hanya satu di antaranya yang cocok untuk setiap tempat yang akan Anda konfigurasi. Menyalin angka dari panel penyedia ke DNS, ke pendengar, atau ke daftar izin adalah cara sebuah terowongan yang berfungsi berubah menjadi layanan yang tidak bisa dijangkau siapa pun. Panduan ini mengurutkan pekerjaan agar setiap alamat dipilih untuk tujuan yang dinyatakan. Panduan ini juga mencantumkan perintah yang memastikan apa yang sebenarnya Anda terbitkan.

Petakan ketiga alamat sebelum menerbitkan apa pun

Beri nama sesuai fungsinya. Alamat underlay adalah yang dipakai mesin untuk menjangkau titik akhir VPN lewat internet, dan sering kali privat di balik NAT penyedia. Alamat terowongan hidup di dalam VPN, diberikan oleh server atau klien tergantung produknya. Keluaran publik adalah alamat yang dicatat situs web jarak jauh setelah penerjemahan, dan alamat itu tidak harus ada pada antarmuka mana pun yang bisa Anda tanyakan.

Panel yang menampilkan satu alamat publik untuk sebuah mesin hanya memberi tahu sedikit sekali tentang dua peran lainnya. Keterjangkauan underlay adalah syarat, bukan pembelian: laptop di balik router rumah dapat menjangkau titik akhir VPN yang dihosting tanpa memiliki alamat IPv4 publik. Yang tidak bisa Anda lakukan adalah mengarang jalur masuk dengan menulis nama yang mengarah ke alamat yang tidak diteruskan siapa pun.

Pilih alamat berdasarkan layanan, bukan berdasarkan label

Tuliskan apa yang harus dilakukan server sebelum memilih angka. Panggilan API keluar membutuhkan keluaran stabil ketika pihak lain memelihara daftar izin. Akses privat membutuhkan alamat terowongan yang bisa dirutekan klien dan pendengar yang terikat padanya. Hosting publik membutuhkan pemetaan masuk yang benar-benar ditawarkan penyedia, dan alamat keluar saja tidak menyediakannya.

Satu mesin dapat melayani ketiga tujuan itu dan tetap memakai tiga alamat berbeda. Yang runtuh adalah anggapan bahwa satu nilai mencakup semuanya:

RequirementValue that belongs thereWhat you see when the roles are swapped
Outbound allowlistingPublic exitRequests reach the service but are rejected
Private client accessTunnel addressClient connects, nothing answers
Inbound web serviceProvider mappingName resolves, connection times out

Baris masuk adalah yang diperdebatkan orang. Catatan yang menunjuk ke alamat keluar tidak membuat pendengar, tidak membuka firewall, dan tidak memetakan port, dan menunggu tidak mengubahnya. Ketika penyedia menjual alamat khusus bersama aturan masuk, paket itulah kemampuan yang Anda beli; alamatnya sendiri bukan hak.

Perintah yang menunjukkan alamat mana yang mana

Bacalah mesinnya, bukan panelnya. Nama antarmuka berbeda antar sistem, jadi pasangkan alamat dengan perangkat alih-alih memercayai label.

Baris pertama mencantumkan setiap alamat IPv4 dan perangkatnya, dan baris kedua menanyakan kepada kernel perangkat mana yang akan dipakai untuk tujuan luar yang diketahui:

ip -brief -4 addr show
ip -4 route get 198.51.100.10
curl -4 -s https://ifconfig.me
ss -lntp | grep -E ':(443|1194)'

Jika pencarian rute menjawab dengan perangkat terowongan untuk lalu lintas publik, terowongan penuh Anda berlaku. Pemeriksaan pendengar sama pentingnya, karena proses yang hanya terikat ke 127.0.0.1 tidak akan pernah menjawab di alamat terowongan, nama apa pun yang Anda terbitkan.

Terbitkan, lalu verifikasi dari luar

Terbitkan hanya nilai yang dibutuhkan layanan: catatan A atau AAAA untuk hosting, entri daftar izin untuk panggilan keluar, profil klien untuk akses privat. Lalu uji dari posisi yang penting, dan itu tidak pernah mesin yang baru saja Anda sunting.

Dua pemeriksaan mencakup sebagian besar, dan keduanya cukup murah untuk disimpan dalam skrip:

dig +short vpn.example.net A
curl -4 -sS -o /dev/null -w '%{http_code}\n' https://vpn.example.net/health

Jawaban DNS yang membuktikan catatan Anda ada bukan bukti bahwa permintaan tiba, dan satu permintaan yang berhasil hanya membuktikan satu jalur berfungsi dari satu jaringan. Ulangi pemeriksaan dari koneksi seluler ketika daftar izin terlibat, karena keluaran yang Anda amati bisa bergantung pada keluarga alamat dan rute yang ditempuh. Catat keluarga mana yang Anda verifikasi; jalur IPv4 yang berfungsi tidak mengatakan apa pun tentang IPv6.

Jika layanan itu masuk, alamat keluar tidak cukup

Akses masuk membutuhkan empat hal sejajar: nama atau alamat yang bisa dijangkau klien, rute yang mengantarkan paket ke mesin, pendengar yang menerimanya, dan kebijakan yang tidak menjatuhkannya. VPN mengubah unsur kedua dan kadang yang pertama, dan tidak melakukan apa pun untuk yang ketiga dan keempat. Ketika terowongan adalah jalur pengantaran, klien tersambung ke alamat terowongan, bukan ke alamat keluar.

Catat alamat mana yang menjadi sandaran tiap layanan, lalu tinjau catatan itu setiap kali penyedia mengubah model peruteannya. Server yang menjawab secara privat dan gagal secara publik biasanya tidak rusak; ia menjawab dengan identitas yang salah, dan perbaikannya adalah keputusan pemetaan, bukan perubahan firewall.

Artikel terkait