Radi na tvom Macu, pa izgleda kao nešto što možeš predati korisnicima. Tu pretpostavku treba prvo napustiti. Apple TN3165 jasno navodi da Packet Filter nije podržani API za opšte distribuirane proizvode, i privilegovanu, kontrolisanu administraciju lokacije smatra razumnim slučajem. Zato je PF VPN zaključavanje lokalna operativna politika sa vlasnikom, a ne funkcija koju možeš isporučiti unutar aplikacije.

PF nije površina za pakovanje

Ta razlika nije akademska. Distribuirani proizvod koji zavisi od PF nasleđuje svaku promenu koju Apple u njemu napravi, svaki sukob sa drugim alatom koji takođe piše pravila, i nikakvu obavezu podrške da će taj aranžman nastaviti da radi. Lokacija koja administrira sopstvene mašine ima drugačiji odnos: može dokumentovati zavisnost, testirati je na svakom izdanju OS-a i prihvatiti održavanje.

Neki saveti za instalaciju prelaze granicu koju vredi imenovati. Prepisivanje celog sistemskog skupa pravila da bi se učitalo jedno sidro, uređivanje Apple-ove sistemske konfiguracije pokretanja ili isključivanje System Integrity Protection nisu prihvatljivi zahtevi za recept koji se ponovo koristi. Ako objavljeni vodič zahteva bilo šta od toga, opisuje laboratoriju, a ne politiku koja se može rasporediti.

Napiši nameru izlaza pre sintakse

Odluči šta je dozvoljeno pre nego što izabereš jednu ključnu reč. Obično moraju postojati tri puta: sopstveni transport VPN klijenta do njegovog servera, zaštićeni saobraćaj aplikacije unutar tunela i sve što podešavanje ili lokalne usluge zaista zahtevaju direktan put.

Svakom predloženom izuzetku daj odredište, transport i vlasnika. Dozvola svih portova ka jednoj krajnjoj tački dozvoljava mnogo više od jednog transporta koji tunel koristi, a dodatna izloženost nastaje bez toga da je iko odlučio da tako treba. Dozvola javnog rezolvera je ista zamka u prijatnijem izdanju: stvara direktan DNS put čak i dok je tunel pao, pa pretrage imena i dalje cure.

PathDestinationOwner
VPN transportGateway address, one UDP portNetwork team
Tunnel trafficInternal prefixesApplication owner
Resolver exceptionNamed internal resolverSecurity team

Koristan test za izuzetak je da li možeš imenovati osobu koja ga je tražila i kvar koji sprečava. Ako nijedan odgovor ne postoji, pravilo je verovatno zaobilazno rešenje za pogrešnu konfiguraciju koja bi inače ostala nevidljiva.

utun brojevi nisu identitet

MacOS pravi tunelske interfejse kao utun uređaje, a broj dodeljen tvom VPN-u nije stabilan kroz restartovanja, ponovna povezivanja ili prisustvo drugog klijenta. Pravilo koje navodi nekoliko pretpostavljenih brojeva nije politika; to je snimak jednog popodneva.

Usidri pravilo u nešto što identifikuje nameravanog provajdera: plan adresa koji tunel dodeljuje, proces koji poseduje interfejs ili konfiguraciju koju održava sam VPN klijent. Zatim zabeleži kako ta identifikacija funkcioniše, jer osoba koja bude pregledala pravilo za godinu dana neće imati tvoju shell istoriju.

Učini učitanu politiku pripisivom

Ime sidra organizuje pravila; ono ne dokazuje da je efektivna politika ona koju si nameravao. Prioritet između sidara, pravila koja je učitao drugi softver i postojeće stanje mogu promeniti ishod. Pregledaj efektivni skup sa svima ostalima koji poseduju PF na toj mašini i dokumentuj vlasništvo na istom mestu gde je konfiguracija. Dva vlasnika koji uređuju različita sidra sa različitim pretpostavkama uobičajen su način na koji zaključavanje dobije rupu.

Drži skup pravila u podržanoj konfiguracionoj putanji lokacije, verzioniraj ga i zabeleži koja su macOS izdanja testirana. Promena koja se primenjuje ručno i koju pamti jedna osoba nije održavana infrastruktura, šta god zaglavlje fajla govorilo.

Testiraj prelaze, a ne povezano stanje

Snimak ekrana napravljen dok je tunel aktivan ne dokazuje skoro ništa. Prođi kroz stanja: pokretanje pre bilo kakve veze, tunel koji radi, tunel koji padne bez upozorenja, namerno isključivanje i prelazak sa Wi-Fi na hotspot. Svako stanje ima svoj odgovor, a zanimljivi su kvarovi, a ne srećan put.

U svakom stanju zabeleži šta je namerno dostupno. Proveri IPv4 i IPv6 odvojeno, testiraj razrešavanje imena i uključi tok koji je već bio uspostavljen pre prelaska, jer postojeće veze ne prate uvek novu politiku. Pretraživač koji ne radi dok je tunel pao jedna je tačka podataka, a ne dokaz da su svi ostali putevi blokirani.

Na kraju, drži metod oporavka koji ne zavisi od mrežnog puta koji menjaš. Poznata dobra konfiguracija na lokalnom skladištu i dokumentovan način da se ona učita pretvaraju zaključavanje u politiku; bez njih, jedna loša revizija zaključava administratora izvan mašine koja je trebalo da bude zaštićena.

Povezani članci