Особистий VPN чи пакетний тунель: дві моделі VPN для iPhone
Одна модель налаштовує вбудований у iOS IPsec або IKEv2; інша постачає провайдера, який реалізує власний протокол. Назва продукту не говорить, що саме ви отримали.
Два застосунки для iPhone можуть обидва додати запис VPN у Налаштуваннях, обидва називати себе VPN-клієнтами і майже не мати спільної реалізації. Apple називає одну з таких інтеграцій Особистим VPN, і саме це ім'я породжує більшу частину плутанини. Особистий VPN — це API для створення й керування конфігураціями, які використовують вбудовану реалізацію IPsec або IKEv2. Провайдер пакетного тунелю — інша модель: застосунок постачає розширення, яке реалізує клієнтський бік власного протоколу. Усе, що люди потім виводять із цієї позначки, від шифрів до володіння і до того, чи потрібно керувати телефоном, — це висновок, а не твердження.
Хто реалізує тунель
Цей поділ вирішує, хто відповідальний, коли щось ламається. При вбудованому IPsec або IKEv2 машиною станів тунелю володіє iOS, а застосунок володіє конфігурацією та кнопками. При провайдері застосунок володіє обома, тож помилка протоколу стає оновленням застосунку, а не оновленням операційної системи.
Порівняння коротке, якщо запитати, хто реалізує протокол.
| Integration | Apple interface | Protocol implementation |
|---|---|---|
| Personal VPN | NEVPNManager with a Personal VPN configuration | The system IPsec or IKEv2 client |
| Packet tunnel | NETunnelProviderManager plus the provider extension | Whatever the extension implements |
Документація Особистого VPN також згадує явний запит авторизації користувача, коли застосунок уперше зберігає конфігурацію, і це стосується тієї моделі, а не застосунків VPN загалом.
Два твердження про позначку, від яких варто відмовитися
Перше — що Особистий VPN обирає шифр. Це не так; узгоджений набір походить із протоколу та його конфігурації, і позначка Особистий нічого не каже про те, який ви отримаєте. Друге — що Особистий VPN означає проксі або обмежений тунель. Він означає вбудований IPsec або IKEv2, а це повний тунель щоразу, коли маршрути кажуть так.
Тож наявність застосунку не є доказом щодо дротового протоколу. Сторонній клієнт, що говорить WireGuard або OpenVPN, за побудовою є застосунком провайдера, бо iOS не реалізує ці протоколи нативно.
Чому корпоративне формулювання вводить в оману
Документація Apple класифікує конфігурації NETunnelProviderManager як звичайні корпоративні конфігурації VPN. Це формулювання — категорія API, і воно штовхає людей до двох протилежних помилок: вважати, що споживчий застосунок не може використовувати модель провайдера, і вважати, що телефон для цього має бути під наглядом. Жодне з цього не випливає. Споживчі застосунки регулярно постачають провайдерів, а нагляд — окреме питання про те, хто може застосовувати політику.
Володіння керуванням — це четверте питання, і воно не залежить від обох моделей. Конфігурація, встановлена організацією, несе власну ідентичність, обсяг трафіку й правила життєвого циклу, і вони подорожують із профілем, а не із застосунком, який випадково встановлено. Читайте їх разом із моделлю інтеграції, бо керований вбудований профіль і некерований профіль провайдера можуть бути на одному телефоні одночасно.
Перевіряйте доказ, а не знімок екрана
Знімки екрана — найгірший доступний доказ, бо групування в Налаштуваннях змінюється між випусками. Керований профіль називає свій тип корисного навантаження: вбудований профіль оголошує тип VPN, наприклад IKEv2 або IPsec, а профіль провайдера несе підтип з ідентифікатором пакета провайдера. Це можна перевірити на пристрої перед вами, і це переживе наступний редизайн.
Що ж до самого застосунку, використовуваний клас відповідає на те саме питання з іншого боку: об'єкти конфігурації з API Особистого VPN або менеджер провайдера та його розширення.
Далі обирайте за тим, що оператор насправді надає. Там, де є сумісний нативний профіль, вбудований шлях має менше рухомих частин і на одну річ менше для оновлення. Там, де службі потрібен протокол, якого iOS не постачає, застосунок провайдера — єдиний варіант, і його ритм випусків стає частиною вашого ризику.
Зберігайте запис разом із підключенням
Прив'яжіть автентифікацію та політику ресурсів до запису підключення, а не до застосунку, щоб перевстановлення не забрало з собою модель авторизації. Цей запис — ще й те, що потрібно інженеру підтримки, коли тунель піднімається, а більше нічого не працює.
Питання, яке варто поставити наприкінці, не в тому, яка модель краща. А в тому, яку модель підтримує ваш оператор і яку ви зможете налагоджувати о другій годині ночі тими інструментами, які у вас справді є.