Mac VPN postavke ne pokreću server: gdje živi pristupnik
VPN unos na Macu samo uspostavlja odlaznu vezu. Tri pitanja odlučuju treba li vam umjesto toga host pristupnika i kako dokazati da slušatelj postoji prije klijenata.
Dva različita posla nose ime VPN u macOS-u, a ploča s postavkama obrađuje samo jedan od njih. Želite li da promet ovog Maca izlazi kroz pružatelja usluge ili udaljeni pristupnik, klijentski unos je sve što vam treba. Želite li iz hotelske sobe doći do pisača, NAS-a ili administrativne stranice na svojoj kućnoj mreži, tada nešto na toj mreži mora prihvatati veze izvana, a trenutačni 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.
Klijentski unos imenuje odredište, ne slušatelja
U Sistem postavkama > Mreža > VPN na macOS Ventura i novijim, polja koja starija izdanja drže pod Mrežnim postavkama opisuju kako doći do tuđe završne točke: adresa poslužitelja, udaljeni ID, račun ili certifikat i neobavezna pravila povezivanja na zahtjev. Spremanje tog unosa pohranjuje vezu u mrežnoj konfiguraciji vašeg Maca. Ništa u tom postupku ne veže port, ne otvara slušatelja niti 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 rabi vaš protokol: 500 i 4500 za IKEv2, 1194 za zadani OpenVPN, 51820 za WireGuard. Stroj koji je samo klijent pokazuje utičnice spojene s udaljenom adresom i portom, a ne obvezivanje na zamjenski znak do kojeg bi išta na internetu moglo doći. Tuneli koji rade unutar Network Extensiona mogu se sakriti od lsof-a, zato u svakom slučaju provjerite i vlastitu ploču stanja aplikacije; ono što nećete naći jest Appleova postavka koja ovaj Mac pretvara u pristupnik.
Tri pitanja razdvajaju dvije uloge
Prođite kroz njih redom. Prvo obično odlučuje ostalo, a treće je mjesto gdje većina planiranja specifičnog za Mac pođe po zlu.
1. Ko započinje razgovor? Ako vaš Mac zove prema van i druga strana odgovara, treba vam klijent. Ako uređaji na internetu moraju zvati 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 porta. Cijela podmreža, uključujući razrješavanje imena, odluka je o usmjeravanju i DNS-u i mijenja što pristupnik mora proslijediti, a ne što klijentski unos kaže.
3. Koje izdanje OS-a vrti prihvatni kraj? Za Macove to pitanje ima tvrd odgovor. Apple navodi VPN kao uklonjen iz macOS Servera 5.7.1, a sama aplikacija macOS Server ukinuta je 21. travnja 2022.; stranica koju vrijedi pročitati kad vas stari vodič provodi kroz potvrdni okvir VPN usluge koje više nema jest obavijest o povijesti usluge.
Kad prvi odgovor glasi “netko izvana započinje”, prestanite tražiti prekidač u klijentskoj ploči Maca i odaberite host koji će zaključiti tunel.
Gdje pristupnik može živjeti umjesto toga
Četiri rasporeda pokrivaju većinu kućnih i malih uredskih slučajeva. Usmjerivač sa stvarnim načinom rada poslužitelja, nasuprot klijentskom načinu s drukčijom oznakom, zaključuje tunel na rubu i drži broj hostova niskim, ali vas veže za podršku protokolima tog firmwarea. NAS ili mini računalo koje stalno radi vrti 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. Mreža preklopa izgrađena na WireGuardu, ili upravljana usluga koja prenosi između parnjaka, zaobilazi prosljeđivanje dolaznih portova tako što oba kraja zovu prema van.
Granica između tih opcija obično je vaša internetska veza, a ne softver. Ako vas pružatelj stavi iza NAT-a na razini operatera, nikakvo prosljeđivanje portova na usmjerivaču ne stvara dostupnu ulaznu točku i iskren je odgovor raspored s relejem ili mrežom preklopa. Usporedite WAN adresu koju vaš usmjerivač prijavljuje s adresom koju vidi vanjski svijet; ako se razlikuju i vrijednost usmjerivača leži u privatnom ili dijeljenom rasponu, planirajte slučaj s relejem.
Koji god host odabrali, prosljeđujte jedan protokol na jednom portu, a ne raspon, i držite Mac izvan dolaznog puta osim ako taj proizvod dokumentira ulogu poslužitelja za izdanje macOS-a koje vrtite.
Potvrdite ulogu prije nego podijelite profile
Na kandidatu pristupnika 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, samim protokolom. Ping dokazuje malo: ICMP se obično filtrira i ne govori ništa o UDP 51820. Klijentski handshake s opširnim zapisivanjem, pokrenut s telefona na mobilnim podacima, najjeftiniji je stvarni test jer prolazi istim putem kojim će proć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 handshake uspije na LAN-u ali ne uspije izvana, krivnja je u dolaznom putu: NAT pravilo, CGNAT pružatelja ili vatrozid na pristupniku, tim redom.
Prije nego bilo što izgradite, razriješ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 uistinu ulogu poslužitelja.
- Daje li vam pružatelj uopće dostupnu javnu adresu.
- Koji jedini port i protokol će pristupnik prihvatiti i koja usluga iza njega odgovara.
Sljedeći je korak konkretan: odaberite host pristupnika, potvrdite njegov slušatelj izvana i tek onda izradite klijentski unos na Macu koji pokazuje na njega.