VPN programėlė ar integruotas IKEv2 iPhone telefone: kaip pasirinkti
iPhone VPN programėlė ir integruotas IKEv2 klientas sprendžia skirtingas problemas. Pirmiausia palyginkite protokolų palaikymą, autentifikavimą, įrenginio valdymą ir atkūrimą.
Praėjusią savaitę kolega man padavė savo iPhone telefoną, kuriame Nustatymuose buvo du VPN įrašai: vieną paliko paslaugų teikėjo programėlė, kitas buvo iš IKEv2 profilio, įklijuoto iš pagalbos puslapio. Tai nėra konkuruojančios to paties dalyko versijos. Paslaugų teikėjo programėlė yra konteineris, galintis nešti savo tunelio kodą, o Apple integruotas klientas yra IKEv2 klientas, konfigūruojamas rankiniu būdu arba profiliu. Protokolas, kredencialų tvarkymas, įrenginio valdymas ir atkūrimas lemia pasirinkimą.
Programėlė ir vietinis klientas yra skirtinguose sluoksniuose
Apple integruotas VPN klientas praktiškai yra IKEv2 klientas. Rankinė forma vis dar išvardija pasenusį L2TP per IPsec ir Cisco IPsec variantus, tačiau nėra teikėjo transporto lauko ir vietos, kur įklijuoti OpenVPN ar WireGuard konfigūraciją. Jūs arba užpildote formą skirtuke Nustatymai > Bendrieji > VPN & Įrenginio valdymas, arba importuojate profilį su VPN kroviniu; paviršius yra serverio adresas, dvi tapatybės, autentifikavimo metodas ir pasirenkamos taisyklės pagal poreikį.
Paslaugų teikėjo programėlė dirba vienu sluoksniu aukščiau. Ji pateikia Network Extension paketų tunelio teikėją, todėl protokolo kodas ir maršrutizavimo logika gyvena programėlėje, o iOS tik perduoda paketus. Kai kurios programėlės įgyvendina WireGuard ar OpenVPN, kitos savo užmaskuotą transportą, o kelios tik įdiegia IKEv2 profilį ir valdo vietinį klientą už gražesnio ekrano. Būtent dėl šios paskutinės grupės programėlės ar profilio pasirinkimas kartais yra klaidingas.
Pasekmė praktiška: .ovpn ar WireGuard failas nepakeičia tų laukų, nes rankos paspaudimas yra kitas protokolas.
Perskaitykite krovinį prieš lygindami funkcijas
Kai profilis yra IKEv2, krovinio raktai paaiškina daugiau gedimų nei bet koks funkcijų palyginimas. Apple IKEv2 nustatymų žinynas dokumentuoja kiekvieną raktą; sutrumpintas krovinys atrodo taip:
<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>
Trys laukai neša didžiąją diagnostinio svorio dalį. RemoteIdentifier yra vardas, kurio klientas tikisi iš serverio, todėl vartai už NAT arba apkrovos balansuotojas, kurio sertifikatas įvardija telkinį, o ne adresą, nepavyksta net kai adresas teisingas. LocalIdentifier yra tapatybė, kuria serveris jus laiko, o autentifikuojant sertifikatu ji turi atitikti su jūsų paskyra susietą tapatybę. ServerCertificateIssuerCommonName prisega išduodančią CA, todėl profilis gali nepavykti dieną, kai sertifikatas išduodamas iš naujo, ir jokia klaidos žinutė nepamini sertifikatų.
Jei AuthenticationMethod lygus SharedSecret, serveris atlieka EAP naudotojo autentifikavimą, o gautas slaptažodis iš tikrųjų yra paskyros kredencialas. Tai svarbu, kai teikėjas atsiunčia du dokumentus, vieną naudotojo vardui ir slaptažodžiui, o kitą sertifikatui, ir tik vienas atitinka tai, ką importavote.
Ką programėlė gali, o vietinis klientas ne
Protokolo pasirinkimas yra akivaizdus pranašumas. Jei jūsų serveris kalba WireGuard ar OpenVPN, programėlė yra vienintelis iOS klientas, galintis tuo naudotis, o vietinės formos redagavimas to nesuderins. Programėlė taip pat gali įgyvendinti padalintą tunelį pagal paskirties vietą ar programėlę, savo DNS tvarkymą, blokavimą kill switch stiliumi, serverio pasirinkimą ir prie savo tinklo pritaikytą prisijungimą iš naujo.
Kaina yra programinė įranga, kurios neauditavote ir kuri veikia su tinklo plėtinio teisėmis. Kokybė skiriasi labiau, nei rodo parduotuvės kortelės: viena programėlė prisijungia švariai, o kita po tinklo pakeitimo kelias sekundes nuteka, ir kill switch programėlės viduje yra tos programėlės funkcija, ne iOS. Valdomame įrenginyje pirmiausia patikrinkite patvirtintą sąrašą.
Ką integruotas IKEv2 profilis daro teisingai
Mažiau judančių dalių yra visas argumentas. IKEv2 klientas ir jo IPsec stekas ateina su operacine sistema, todėl nėra plėtinio, kuris gali nukristi, nėra proceso kiekvienai programėlei, kurį reikia išlaikyti gyvą, ir nėra trečiosios šalies atnaujinimų ciklo tarp jūsų ir veikiančio tunelio. Profilį galima ir užrakinti: prižiūrimame įrenginyje naudotojas negali pašalinti to, ką įdiegė valdymas, o Always On VPN, kuris iš naujo prisijungia bet kuriame tinkle be naudotojo jungiklio, egzistuoja tik tokia prižiūrima, profiliu valdoma forma.
Ko integruotas kelias neduoda, tai lankstumo. Nėra VPN kiekvienai programėlei be valdomų programėlių, nėra naudotojo kill switch ir nėra transporto, kuris IPsec blokuojančiame tinkle atrodytų kaip HTTPS. Viešbučių tinkluose, kurie meta UDP 500 ir 4500, integruotas IKEv2 neturi atsarginio kelio.
Sprendimų lentelė, išsprendžianti daugumą atvejų
Praktiškai protokolo klausimas nusprendžia daugumą atvejų anksčiau, nei funkcijos tampa svarbios.
| What you were given | Device situation | What to use |
|---|---|---|
| An .ovpn or WireGuard config | Personal phone | Provider app; the native form cannot load it |
| IKEv2 host plus CA name | Personal or managed | Profile, or the app's own IKEv2 mode |
| IKEv2 with username and secret | Personal phone | Either; the profile is simpler if you never switch servers |
| A management-installed profile | Supervised, MDM | Native client; do not add a second app entry |
| A per-app tunnelling requirement | Personal phone | App, or accept a full tunnel; iOS cannot split by app without management |
| IPsec blocked on your main network | Any | App with a transport that survives the block |
Dvi eilutės vertos antro žvilgsnio. Reikalavimas kiekvienai programėlei asmeniniame telefone yra atvejis, kurį žmonės perskaito neteisingai: nustatymas yra iOS, bet jį valdo valdymas, todėl nevaldomas įrenginys jo nepasiūlys. Užblokuotas tinklas nėra priežastis nepasitikėti IKEv2; tai priežastis, kodėl egzistuoja teikėjo programėlė.
Patikrinkite pasirinkimą vienu bandymu
Bandykite gedimų režimus, o ne prisijungimo mygtuką. Prisijunkite kartą, patvirtinkite, kad pasirodo VPN indikatorius, tada atidarykite puslapį, kuris grąžina jūsų viešą adresą, ir palyginkite su ankstesniu. Perjunkite iš Wi-Fi į mobilųjį ryšį neliesdami VPN ir stebėkite prisijungimą iš naujo, tada praleiskite telefoną per lėktuvo režimą. Paleiskite iš naujo ir pažiūrėkite, ar tunelis grįžta pats: profilis su OnDemandEnabled turėtų, o daug programėlių reikia pirmiausia atidaryti.
Kai jis negrįžta, padalykite gedimą pagal tai, ar tunelis apskritai yra. Nėra VPN indikatoriaus reiškia, kad tunelis niekada nebuvo pakeltas: arba rankos paspaudimas nepavyko ties RemoteIdentifier, prisegta CA ar kredencialu, arba ryšys niekada nebuvo bandomas, nes taisyklė pagal poreikį netiko ir jokia programėlė jo nepaleido. Indikatorius su nepavykstančiu srautu reiškia maršrutizavimą, DNS ar serverio pusės politiką, o kliento perdiegimas nieko iš to neliečia.
Trumpas sąrašas, kad įrenginys būtų paaiškinamas kitam žmogui:
- vienas VPN įrašas, ne du;
- profilis ar programėlė pavadinti serverio, prie kurio jungiasi, vardu;
- tapatybės reikšmės užrašytos ten, kur galite jas rasti.
Pradėkite nuo protokolo eilutės lentelėje ir sustokite ten, jei ji atsako į klausimą.