Setelan VPN Mac tidak menjalankan server: tempat gateway berada
Entri VPN di Mac hanya memanggil keluar. Tiga pertanyaan memutuskan apakah Anda perlu host gateway, dan cara membuktikan listener ada sebelum klien.
Dua pekerjaan berbeda memakai nama VPN di macOS, dan panel setelan hanya menangani salah satunya. Jika Anda ingin lalu lintas Mac ini keluar lewat penyedia atau gateway jarak jauh, entri klien sudah cukup. Jika Anda ingin menjangkau printer, NAS, atau halaman admin di jaringan rumah dari kamar hotel, sesuatu di jaringan itu harus menerima koneksi dari luar, dan Mac saat ini bukanlah sesuatu itu secara bawaan. Tiga pertanyaan menentukan kasus mana yang Anda hadapi, dan sebaiknya dijawab sebelum Anda mengetik alamat ke sebuah kolom.
Entri klien menamai tujuan, bukan listener
Di Pengaturan Sistem > Jaringan > VPN pada macOS Ventura dan sesudahnya, kolom yang di versi lama berada di Preferensi Jaringan menjelaskan cara menjangkau endpoint milik orang lain: alamat server, ID jarak jauh, akun atau sertifikat, dan aturan sambung-sesuai-permintaan yang opsional. Menyimpan entri itu menyimpan koneksi di konfigurasi jaringan Mac Anda. Tidak ada bagian dari proses ini yang mengikat port, membuka listener, atau mendaftarkan pengguna jarak jauh.
Anda bisa memeriksanya dari shell. Pada Mac yang Anda curigai melayani, jalankan sudo lsof -nP -iUDP dan cari port yang dipakai protokol Anda: 500 dan 4500 untuk IKEv2, 1194 untuk bawaan OpenVPN, 51820 untuk WireGuard. Mesin yang hanya klien menampilkan soket yang dipasangkan dengan alamat dan port jarak jauh, bukan pengikatan wildcard yang bisa dijangkau apa pun di internet. Terowongan yang berjalan di dalam Network Extension bisa bersembunyi dari lsof, jadi periksa juga panel status aplikasinya; yang tidak akan Anda temukan adalah preferensi Apple yang mengubah Mac ini menjadi gateway.
Tiga pertanyaan memisahkan kedua peran
Kerjakan berurutan. Pertanyaan pertama biasanya menentukan sisanya, dan yang ketiga adalah tempat sebagian besar perencanaan khusus Mac salah arah.
1. Siapa yang memulai percakapan? Jika Mac Anda memanggil keluar dan pihak lain menjawab, Anda perlu klien. Jika perangkat di internet harus memanggil masuk untuk menjangkau jaringan Anda, Anda perlu gateway dengan titik masuk publik, dan Mac bisa tetap menjadi klien gateway itu.
2. Apa yang harus bisa dijangkau selama terowongan menyala? Satu layanan di satu host adalah keputusan penerusan port. Satu subnet penuh, termasuk resolusi nama, adalah keputusan perutean dan DNS, dan itu mengubah apa yang harus diteruskan gateway, bukan apa yang dikatakan entri klien.
3. Rilis OS mana yang menjalankan ujung penerima? Untuk Mac, pertanyaan itu punya jawaban tegas. Apple mencantumkan VPN sebagai dihapus dari macOS Server 5.7.1, dan aplikasi macOS Server sendiri dihentikan pada 21 April 2022; pemberitahuan riwayat layanan adalah halaman yang perlu dibaca ketika tutorial lama menuntun Anda melewati kotak centang layanan VPN yang sudah tidak ada.
Ketika jawaban pertama adalah “seseorang dari luar yang memulai”, berhentilah mencari sakelar di panel klien Mac dan pilihlah host yang akan menamatkan terowongan.
Di mana gateway bisa berada sebagai gantinya
Empat susunan mencakup sebagian besar kasus rumah dan kantor kecil. Router dengan mode server sungguhan, bukan mode klien dengan label berbeda, menamatkan terowongan di tepi dan menjaga jumlah host tetap rendah, dengan harga terikat pada dukungan protokol firmware itu. NAS atau PC mini yang selalu menyala menjalankan paket server dari vendor dan meninggalkan log yang bisa Anda baca. VM cloud kecil memberi Anda alamat publik yang Anda kendalikan dan menjangkau rumah lewat terowongan kedua. Lapisan mesh yang dibangun di atas WireGuard, atau layanan terkelola yang meneruskan antar peer, menghindari penerusan port masuk dengan membuat kedua ujung memanggil keluar.
Batas antara pilihan itu biasanya koneksi internet Anda, bukan perangkat lunaknya. Jika ISP menempatkan Anda di belakang NAT tingkat operator, seberapa pun penerusan port di router tidak menghasilkan titik masuk yang terjangkau, dan susunan relay atau mesh adalah jawaban yang jujur. Bandingkan alamat WAN yang dilaporkan router Anda dengan alamat yang dilihat dunia luar; jika keduanya berbeda dan nilai router berada di rentang privat atau bersama, rencanakan kasus relay.
Host mana pun yang Anda pilih, teruskan satu protokol pada satu port alih-alih satu rentang, dan jauhkan Mac dari jalur masuk kecuali produk khusus itu mendokumentasikan peran server untuk rilis macOS yang Anda jalankan.
Pastikan perannya sebelum membagikan profil
Pada calon gateway, buktikan listener ada alih-alih percaya bahwa pemasang telah membuatnya. Di macOS itu berarti sudo lsof -nP -iUDP yang disaring ke port di atas, ditambah sudo pfctl -s nat jika aturan penyaring paket menjadi bagian dari rancangan. Di Linux, ss -lunp menunjukkan fakta yang sama tanpa keraguan.
Lalu uji dari luar jaringan, memakai protokolnya sendiri. Ping tidak membuktikan banyak: ICMP sering disaring dan tidak mengatakan apa pun tentang UDP 51820. Jabat tangan klien dengan pencatatan verbose, dijalankan dari ponsel di data seluler, adalah uji nyata termurah karena melewati jalur yang sama dengan yang akan dilalui kolega jarak jauh.
Baru setelah itu Anda menyentuh profil klien. Di Mac, scutil --nc list mencetak layanan VPN yang dikenal sistem; jika gateway yang baru Anda bangun tidak ada di antaranya, Anda sedang mengonfigurasi mesin yang berbeda dari yang Anda uji. Jika jabat tangan berhasil di LAN tetapi gagal dari luar, kesalahannya ada di jalur masuk: aturan NAT, CGNAT penyedia, atau firewall di gateway, dalam urutan itu.
Sebelum membangun apa pun, pastikan empat hal:
- Sisi mana yang memulai koneksi, Mac Anda atau perangkat jarak jauh.
- Apakah rilis OS dan produk host penerima benar-benar mendukung peran server.
- Apakah ISP Anda memberi alamat publik yang terjangkau sama sekali.
- Port dan protokol tunggal mana yang akan diterima gateway, dan layanan mana di belakangnya yang menjawab.
Langkah berikutnya konkret: pilih host gateway, pastikan listener-nya dari luar, dan baru setelah itu buat entri klien di Mac yang menunjuk ke sana.