Mac VPN postavke ne pokreću poslužitelj: gdje živi pristupnik
VPN zapis na Macu samo se izvlači prema van. Tri pitanja odlučuju treba li vam host pristupnika i kako dokazati da slušatelj postoji prije klijenata.
Dva različita posla nose ime VPN u macOS-u, a ploča postavki obrađuje samo jedan od njih. Ako želite da promet ovog Maca izlazi kroz pružatelja usluge ili udaljeni pristupnik, dovoljan je zapis klijenta. Ako želite iz hotelske sobe doći do pisača, NAS-a ili administratorske stranice na svojoj kućnoj mreži, nešto na toj mreži mora prihvaćati veze izvana, a aktualni Mac to nije odmah iz kutije. Tri pitanja određuju u kojem ste slučaju, i vrijedi na njih odgovoriti prije nego u polje upišete adresu.
Zapis klijenta imenuje odredište, a ne slušatelja
U Postavkama sustava > Mreža > VPN na macOS-u Ventura i novijem, polja koja starija izdanja drže pod mrežnim preferencijama opisuju kako doći do tuđe završne točke: adresa poslužitelja, udaljeni ID, račun ili certifikat te neobavezna pravila povezivanja na zahtjev. Spremanjem tog zapisa veza se pohranjuje u mrežnoj konfiguraciji vašeg Maca. Ništa u tom postupku ne veže port, ne otvara slušatelja ni upisuje udaljenog korisnika.
To možete provjeriti iz ljuske. Na Macu za koji sumnjate da poslužuje, pokrenite sudo lsof -nP -iUDP i potražite portove koje vaš protokol koristi: 500 i 4500 za IKEv2, 1194 za zadani OpenVPN, 51820 za WireGuard. Stroj koji je samo klijent pokazuje utičnice povezane s udaljenom adresom i portom, a ne zamjensko vezanje do kojeg bi išta na internetu moglo doći. Tuneli koji rade unutar Network Extensiona mogu se skriti od lsof-a, pa svakako provjerite i statusnu ploču aplikacije; ono što nećete naći je Appleova postavka koja ovaj Mac pretvara u pristupnik.
Tri pitanja razdvajaju dvije uloge
Prođite ih redom. Prvo obično odlučuje ostalo, a treće je mjesto gdje većina planiranja specifičnog za Mac ode po zlu.
1. Tko započinje razgovor? Ako se vaš Mac izvlači prema van i druga strana odgovara, treba vam klijent. Ako se uređaji na internetu moraju javljati prema unutra da bi došli do vaše mreže, treba vam pristupnik s javnom ulaznom točkom, a Mac može ostati klijent tog pristupnika.
2. Što mora biti dostupno dok je tunel podignut? Jedna usluga na jednom hostu odluka je o prosljeđivanju portova. Cijela podmreža, uključujući razrješavanje imena, odluka je o usmjeravanju i DNS-u, i mijenja ono što pristupnik mora proslijediti, a ne ono što zapis klijenta kaže.
3. Koje izdanje OS-a pokreće prihvatni kraj? Za Macove to pitanje ima tvrd odgovor. Apple navodi da je VPN uklonjen iz macOS Servera 5.7.1, a sama aplikacija macOS Server ukinuta je 21. travnja 2022; obavijest o povijesti usluge je stranica koju treba čitati kad vas stari vodič provodi kroz potvrdni okvir VPN usluge koji više ne postoji.
Kad je prvi odgovor “netko izvana započinje”, prestanite tražiti prekidač na ploči klijenta Maca i odaberite host koji će zaključiti tunel.
Gdje pristupnik može živjeti umjesto toga
Četiri rasporeda pokrivaju većinu kućnih i manjih uredskih slučajeva. Usmjerivač sa stvarnim načinom poslužitelja, nasuprot načinu klijenta s drugom oznakom, zaključuje tunel na rubu i drži broj hostova niskim, uz cijenu vezanosti uz protokolnu podršku tog firmwarea. NAS ili mini računalo koje stalno radi pokreće proizvođačev paket poslužitelja i ostavlja vam dnevnike koje možete čitati. Mali oblak VM daje vam javnu adresu koju kontrolirate i dolazi kući kroz drugi tunel. Mesh sloj izgrađen na WireGuardu, ili upravljana usluga koja prenosi između partnera, zaobilazi ulazno prosljeđivanje portova time što se oba kraja izvlače prema van.
Granica između tih opcija obično je vaša internetska veza, a ne softver. Ako vas ISP stavi iza NAT-a na razini operatera, nikakvo prosljeđivanje portova na usmjerivaču ne stvara dostupnu ulaznu točku, i pošten odgovor je raspored s relejem ili mrežom. Usporedite WAN adresu koju prijavljuje vaš usmjerivač s adresom koju vidi vanjski svijet; ako se razlikuju i vrijednost usmjerivača je u privatnom ili dijeljenom rasponu, planirajte slučaj s relejem.
Koji god host odabrali, proslijedite jedan protokol na jednom portu umjesto raspona, i držite Mac izvan ulaznog puta osim ako taj proizvod dokumentira ulogu poslužitelja za izdanje macOS-a koje pokrećete.
Potvrdite ulogu prije nego podijelite profile
Na kandidatu za pristupnik dokažite da slušatelj postoji umjesto da vjerujete da ga je instalater stvorio. Na macOS-u to znači sudo lsof -nP -iUDP filtriran na gore navedene portove, plus sudo pfctl -s nat ako su pravila filtra paketa dio dizajna. Na Linuxu ss -lunp pokazuje iste činjenice bez dvosmislenosti.
Zatim testirajte izvan mreže, koristeći sam protokol. Ping ne dokazuje mnogo: ICMP se često filtrira i ne govori ništa o UDP-u 51820. Klijentsko rukovanje s detaljnim zapisivanjem, pokrenuto s telefona na mobilnim podacima, najjeftiniji je pravi test jer prolazi istim putem kojim će proći i udaljeni kolega.
Tek nakon toga dirate klijentske profile. Na Macu scutil --nc list ispisuje VPN usluge koje sustav poznaje; ako pristupnik koji ste upravo izgradili nije među njima, konfigurirate drugi stroj od onoga koji ste testirali. Ako rukovanje uspije na LAN-u, ali ne uspije izvana, greška je na ulaznom putu: NAT pravilo, CGNAT pružatelja ili vatrozid na pristupniku, tim redom.
Prije nego što bilo što izgradite, riješite četiri točke:
- Koja strana započinje vezu, vaš Mac ili udaljeni uređaj.
- Podržavaju li izdanje OS-a i proizvod prihvatnog hosta doista ulogu poslužitelja.
- Daje li vam ISP uopće dostupnu javnu adresu.
- Koji jedini port i protokol pristupnik prihvaća i koja usluga iza njega odgovara.
Sljedeći je korak konkretan: odaberite host pristupnika, potvrdite njegovog slušatelja izvana i tek tada stvorite klijentski zapis na Macu koji pokazuje na njega.