Tetapan VPN Mac tidak memulakan pelayan: di mana gateway tinggal
Entri VPN pada Mac hanya mendail keluar. Tiga soalan menentukan sama ada anda perlukan hos gateway, dan cara membuktikan pendengar wujud sebelum klien.
Dua kerja berbeza memakai nama VPN dalam macOS, dan panel tetapan hanya mengendalikan satu daripadanya. Jika anda mahu trafik Mac ini keluar melalui penyedia atau gateway jauh, entri klien sudah memadai. Jika anda mahu mencapai pencetak, NAS atau halaman pentadbir pada rangkaian rumah dari bilik hotel, sesuatu pada rangkaian itu mesti menerima sambungan dari luar, dan Mac semasa bukanlah sesuatu itu secara lalai. Tiga soalan menentukan kes mana anda berada, dan wajar dijawab sebelum anda menaip alamat ke dalam medan.
Entri klien menamakan destinasi, bukan pendengar
Dalam Tetapan Sistem > Rangkaian > VPN pada macOS Ventura dan kemudian, medan yang disimpan oleh versi lama di bawah Keutamaan Rangkaian menerangkan cara mencapai titik hujung orang lain: alamat pelayan, ID jauh, akaun atau sijil, dan peraturan sambung-atas-permintaan pilihan. Menyimpan entri itu menyimpan sambungan dalam konfigurasi rangkaian Mac anda. Tiada apa dalam proses itu mengikat port, membuka pendengar atau mendaftarkan pengguna jauh.
Anda boleh menyemaknya dari shell. Pada Mac yang anda syaki sedang melayani, jalankan sudo lsof -nP -iUDP dan cari port yang digunakan protokol anda: 500 dan 4500 untuk IKEv2, 1194 untuk lalai OpenVPN, 51820 untuk WireGuard. Mesin yang hanya klien menunjukkan soket berpasangan dengan alamat dan port jauh, bukan ikatan wildcard yang boleh dicapai oleh apa sahaja di internet. Terowong yang berjalan dalam Network Extension boleh menyembunyikan diri daripada lsof, jadi semak juga panel status aplikasi itu; apa yang tidak akan anda temui ialah keutamaan Apple yang menjadikan Mac ini gateway.
Tiga soalan memisahkan kedua-dua peranan
Layaninya mengikut urutan. Yang pertama biasanya menentukan selebihnya, dan yang ketiga ialah tempat kebanyakan perancangan khusus Mac tersasar.
1. Siapa memulakan perbualan? Jika Mac anda mendail keluar dan pihak lain menjawab, anda perlukan klien. Jika peranti di internet mesti mendail masuk untuk mencapai rangkaian anda, anda perlukan gateway dengan titik masuk awam, dan Mac boleh kekal sebagai klien gateway itu.
2. Apa yang mesti boleh dicapai semasa terowong naik? Satu perkhidmatan pada satu hos ialah keputusan pengusiran port. Satu subnet penuh, termasuk penyelesaian nama, ialah keputusan penghalaan dan DNS, dan ia mengubah apa yang gateway mesti teruskan, bukan apa yang dikatakan entri klien.
3. Edaran OS mana yang menjalankan hujung penerima? Bagi Mac, soalan itu mempunyai jawapan tegas. Apple menyenaraikan VPN sebagai dikeluarkan daripada macOS Server 5.7.1, dan aplikasi macOS Server itu sendiri dihentikan pada 21 April 2022; notis sejarah perkhidmatan ialah halaman yang perlu dibaca apabila tutorial lama membawa anda melalui kotak semak perkhidmatan VPN yang tidak lagi wujud.
Apabila jawapan pertama ialah “seseorang dari luar memulakan”, berhenti mencari suis di panel klien Mac dan pergi memilih hos yang akan menamatkan terowong itu.
Di mana gateway boleh tinggal sebaliknya
Empat susunan meliputi kebanyakan kes rumah dan pejabat kecil. Penghala dengan mod pelayan sebenar, berbanding mod klien dengan label berbeza, menamatkan terowong di pinggir dan mengekalkan bilangan hos rendah, tetapi terikat pada sokongan protokol firmware itu. NAS atau PC mini yang sentiasa hidup menjalankan pakej pelayan vendor dan meninggalkan log yang boleh anda baca. VM awan kecil memberi anda alamat awam yang anda kawal dan mencapai rumah melalui terowong kedua. Lapisan mesh yang dibina atas WireGuard, atau perkhidmatan terurus yang menyampaikan antara rakan, mengelakkan pengusiran port masuk dengan membiarkan kedua-dua hujung mendail keluar.
Sempadan antara pilihan itu biasanya sambungan internet anda, bukan perisian. Jika ISP meletakkan anda di belakang NAT gred pembawa, berapa banyak pun pengusiran port pada penghala tidak menghasilkan titik masuk yang boleh dicapai, dan susunan geganti atau mesh ialah jawapan jujur. Bandingkan alamat WAN yang dilaporkan penghala anda dengan alamat yang dilihat dunia luar; jika berbeza dan nilai penghala berada dalam julat persendirian atau dikongsi, rancang untuk kes geganti.
Hos mana pun anda pilih, teruskan satu protokol pada satu port dan bukan julat, dan jauhkan Mac daripada laluan masuk melainkan produk khusus itu mendokumenkan peranan pelayan untuk edaran macOS yang anda jalankan.
Sahkan peranan sebelum mengagihkan profil
Pada calon gateway, buktikan pendengar wujud dan bukan mempercayai bahawa pemasang telah menciptanya. Pada macOS itu bermaksud sudo lsof -nP -iUDP yang ditapis kepada port di atas, tambah sudo pfctl -s nat jika peraturan penapis paket adalah sebahagian daripada reka bentuk. Pada Linux, ss -lunp menunjukkan fakta yang sama tanpa kekaburan.
Kemudian uji dari luar rangkaian, menggunakan protokol itu sendiri. Ping membuktikan sedikit: ICMP sering ditapis dan tidak berkata apa-apa tentang UDP 51820. Genggaman tangan klien dengan log terperinci, dijalankan dari telefon pada data selular, ialah ujian sebenar paling murah kerana ia melalui laluan yang sama dengan rakan sekerja jauh.
Hanya selepas itu anda menyentuh profil klien. Pada Mac, scutil --nc list mencetak perkhidmatan VPN yang diketahui sistem; jika gateway yang baru anda bina tiada di dalamnya, anda mengkonfigurasi mesin yang berbeza daripada yang anda uji. Jika genggaman tangan berjaya di LAN tetapi gagal dari luar, kesalahannya ada pada laluan masuk: peraturan NAT, CGNAT penyedia, atau firewall pada gateway, dalam urutan itu.
Sebelum membina apa-apa, tetapkan empat perkara:
- Pihak mana yang memulakan sambungan, Mac anda atau peranti jauh.
- Sama ada edaran OS dan produk hos penerima benar-benar menyokong peranan pelayan.
- Sama ada ISP anda memberi alamat awam yang boleh dicapai sama sekali.
- Port dan protokol tunggal mana yang akan diterima gateway, dan perkhidmatan mana di belakangnya yang menjawab.
Langkah seterusnya konkrit: pilih hos gateway, sahkan pendengarnya dari luar, dan hanya selepas itu cipta entri klien pada Mac yang menunjuk kepadanya.