Pagājušajā nedēļā kolēģis man pasniedza savu iPhone tālruni, kurā Iestatījumos bija divi VPN ieraksti: vienu atstāja pakalpojumu sniedzēja lietotne, otrs bija no IKEv2 profila, kas ielīmēts no atbalsta lapas. Tie nav vienas un tās pašas lietas konkurējošas versijas. Pakalpojumu sniedzēja lietotne ir konteiners, kas var nest savu tuneļa kodu, savukārt Apple iebūvētais klients ir IKEv2 klients, kas konfigurēts ar roku vai ar profilu. Protokols, akreditācijas datu apstrāde, ierīces kontrole un atjaunošana nosaka izvēli.

Lietotne un vietējais klients atrodas dažādos slāņos

Apple iebūvētais VPN klients praksē ir IKEv2 klients. Manuālā forma joprojām uzskaita novecojušo L2TP virs IPsec un Cisco IPsec opcijas, bet nav pakalpojumu sniedzēja transporta lauka un nav vietas, kur ielīmēt OpenVPN vai WireGuard konfigurāciju. Jūs vai nu aizpildāt formu sadaļā Iestatījumi > Vispārīgi > VPN & Ierīces pārvaldība, vai importējat profilu ar VPN kravu; virsma ir servera adrese, divas identitātes, autentifikācijas metode un neobligāti noteikumi pēc pieprasījuma.

Pakalpojumu sniedzēja lietotne strādā vienu slāni augstāk. Tā piegādā Network Extension pakešu tuneļa pakalpojumu sniedzēju, tāpēc protokola kods un maršrutēšanas loģika dzīvo lietotnē, bet iOS tikai pārsūta paketes. Dažas lietotnes īsteno WireGuard vai OpenVPN, citas savu maskēto transportu, un dažas tikai instalē IKEv2 profilu un vada vietējo klientu aiz skaistāka ekrāna. Tieši šīs pēdējās grupas dēļ lietotnes vai profila izvēle dažkārt ir neīsta.

Sekas ir praktiskas: .ovpn vai WireGuard fails neaizstāj šos laukus, jo rokas spiediens ir cits protokols.

Izlasiet kravu pirms funkciju salīdzināšanas

Kad profils ir IKEv2, kravas atslēgas izskaidro vairāk kļūmju nekā jebkurš funkciju salīdzinājums. Apple IKEv2 iestatījumu uzziņa dokumentē katru atslēgu; saīsināta krava izskatās šādi:

<key>VPNType</key><string>IKEv2</string>
<key>RemoteAddress</key><string>vpn.example.net</string>
<key>RemoteIdentifier</key><string>vpn.example.net</string>
<key>LocalIdentifier</key><string>[email protected]</string>
<key>AuthenticationMethod</key><string>Certificate</string>
<key>ServerCertificateIssuerCommonName</key><string>Example Issuing CA</string>

Trīs lauki nes lielāko daļu diagnostikas svara. RemoteIdentifier ir nosaukums, ko klients gaida no servera, tāpēc vārteja aiz NAT vai slodzes līdzsvarotājs, kura sertifikāts nosauc kopu, nevis adresi, neizdodas arī tad, ja adrese ir pareiza. LocalIdentifier ir identitāte, par kuru serveris jūs uzskata, un autentificējot ar sertifikātu tai jāatbilst jūsu kontam piesaistītajai identitātei. ServerCertificateIssuerCommonName piefiksē izdevēju CA, tāpēc profils var neizdoties dienā, kad sertifikāts tiek izdots no jauna, un neviens kļūdas ziņojums nemin sertifikātus.

Ja AuthenticationMethod ir vienāds ar SharedSecret, serveris veic EAP lietotāja autentifikāciju, un saņemtais noslēpums patiesībā ir konta akreditācijas dati. Tas ir svarīgi, kad pakalpojumu sniedzējs atsūta divus dokumentus, vienu lietotājvārdam un parolei un otru sertifikātam, un tikai viens atbilst tam, ko importējāt.

Ko lietotne var, bet vietējais klients ne

Protokola izvēle ir acīmredzama priekšrocība. Ja jūsu serveris runā WireGuard vai OpenVPN, lietotne ir vienīgais iOS klients, kas to var izmantot, un vietējās formas rediģēšana to nesaskaņos. Lietotne var arī īstenot sadalītu tuneli pēc galamērķa vai lietotnes, savu DNS apstrādi, bloķēšanu kill switch stilā, servera izvēli un savam tīklam pielāgotu atkārtotu savienošanu.

Cena ir programmatūra, kuru neesat auditējis un kas darbojas ar tīkla paplašinājuma tiesībām. Kvalitāte svārstās vairāk, nekā liecina veikala kartītes: viena lietotne atkārtoti pievienojas tīri, bet cita pēc tīkla maiņas dažas sekundes noplūst, un kill switch lietotnes iekšienē ir šīs lietotnes funkcija, nevis iOS. Pārvaldītā ierīcē vispirms pārbaudiet apstiprināto sarakstu.

Ko iebūvētais IKEv2 profils dara pareizi

Mazāk kustīgu daļu ir viss arguments. IKEv2 klients un tā IPsec steks nāk kopā ar operētājsistēmu, tāpēc nav paplašinājuma, kas var sabrukt, nav procesa katrai lietotnei, kas jāuztur dzīvs, un nav trešās puses atjauninājumu cikla starp jums un strādājošu tuneli. Profilu var arī aizslēgt: uz uzraudzītas ierīces lietotājs nevar noņemt to, ko instalējusi pārvaldība, un Always On VPN, kas atkārtoti pievienojas jebkurā tīklā bez lietotāja slēdža, pastāv tikai šajā uzraudzītajā, ar profilu pārvaldītajā formā.

Ko iebūvētais ceļš nedod, ir elastība. Nav VPN katrai lietotnei bez pārvaldītām lietotnēm, nav lietotāja kill switch un nav transporta, kas IPsec bloķējošā tīklā izskatītos kā HTTPS. Viesnīcu tīklos, kas izmet UDP 500 un 4500, iebūvētajam IKEv2 nav rezerves ceļa.

Lēmumu tabula, kas atrisina lielāko daļu gadījumu

Praksē protokola jautājums izlemj lielāko daļu gadījumu pirms tam, kad funkcijas kļūst svarīgas.

What you were givenDevice situationWhat to use
An .ovpn or WireGuard configPersonal phoneProvider app; the native form cannot load it
IKEv2 host plus CA namePersonal or managedProfile, or the app's own IKEv2 mode
IKEv2 with username and secretPersonal phoneEither; the profile is simpler if you never switch servers
A management-installed profileSupervised, MDMNative client; do not add a second app entry
A per-app tunnelling requirementPersonal phoneApp, or accept a full tunnel; iOS cannot split by app without management
IPsec blocked on your main networkAnyApp with a transport that survives the block

Divas rindas ir pelnījušas otru skatienu. Prasība katrai lietotnei personīgajā tālrunī ir gadījums, ko cilvēki izlasa nepareizi: iestatījums ir iOS, bet to vada pārvaldība, tāpēc nepārvaldīta ierīce to nepiedāvās. Bloķēts tīkls nav iemesls neuzticēties IKEv2; tas ir iemesls, kāpēc pakalpojumu sniedzēja lietotne pastāv.

Pārbaudiet izvēli ar vienu mēģinājumu

Pārbaudiet kļūmju režīmus, nevis savienošanas pogu. Pievienojieties vienreiz, apstipriniet, ka parādās VPN indikators, pēc tam atveriet lapu, kas atgriež jūsu publisko adresi, un salīdziniet ar iepriekšējo. Pārslēdzieties no Wi-Fi uz mobilajiem datiem, nepieskaroties VPN, un vērojiet atkārtotu savienošanu, pēc tam izvediet tālruni caur lidmašīnas režīmu. Restartējiet un paskatieties, vai tunelis atgriežas pats: profils ar OnDemandEnabled to darīs, bet daudzas lietotnes vispirms jāatver.

Kad tas neatgriežas, sadaliet kļūmi pēc tā, vai tunelis vispār pastāv. Nav VPN indikatora nozīmē, ka tunelis nekad nav pacēlies: vai nu rokas spiediens neizdevās pie RemoteIdentifier, piefiksētā CA vai akreditācijas datiem, vai savienojums nekad netika mēģināts, jo noteikums pēc pieprasījuma neatbilda un neviena lietotne to nesāka. Indikators ar neizdevušos satiksmi nozīmē maršrutēšanu, DNS vai servera puses politiku, un klienta pārinstalēšana neko no tā neaiztiek.

Īss saraksts, lai ierīce būtu izskaidrojama nākamajam cilvēkam:

  • viens VPN ieraksts, nevis divi;
  • profils vai lietotne nosaukta pēc servera, kuram tā pievienojas;
  • identitātes vērtības pierakstītas tur, kur tās varat atrast.

Sāciet ar protokola rindu tabulā un apstājieties tur, ja tā atbild uz jautājumu.

Saistītie raksti