Керівництво по VPN

Повний гайд по VPN: історія, архітектура, протоколи

У цьому матеріалі ми поговоримо про VPN. Що це таке і які переваги дає. Протоколи VPN та їх особливості. Комплексний гайд по Virtual Private Network.

Що таке VPN?

VPN – це віртуальна приватна мережа (Virtual Private Network), яка працює всередині активного інтернет-з’єднання, являючи собою зашифрований і авторизований тунель між клієнтом та віддаленим VPN-сервером, який координує мережу, роздає IP/DNS адреси й пропускає через себе (проксує) інтернет-трафік. VPN можна використовувати як на рівні операційних систем / програмного забезпечення (транспортному, прикладному рівні), так і маршрутизаторі / роутері (канальний, мережевий рівень).

Сам термін “VPN” є досить сукупним й складається з багатьох технологій. Класична мережа Virtual Private Nerwork (VPN) містить такі компоненти:

  1. Протокол VPN – набір правил і технологій, які визначають роботу VPN. Містить алгоритми шифрування і систему аутентифікації;
  2. Сервер VPN – кінцева точка, яка пропускає і обробляє трафік, який приходить через тунель VPN;
  3. Шлюз VPN (Gateway) – посередник між локальною мережею та віддаленим сервером VPN, налаштовує з’єднання;
  4. Тунель VPN – зашифроване з’єднання між клієнтом і сервером VPN, сам канал передачі даних;
  5. Клієнт VPN – програмний комплекс на стороні користувача для здійснення аутентифікації та під’єднання до VPN-сервера.

Як працює VPN

Переваги VPN:

  • Конфіденційність, безпечність, анонімність. При правильному підході та архітектурі, VPN-мережа створює ізольоване та зашифроване середовище, позбавлене будь-яких витоків інформації (завдяки функціям Kill Switch та Lockdown). Увесь трафік, який проходить через VPN – недоступний третім сторонам, наприклад провайдеру чи інтернет-зловмисникам. Його бачить лише VPN-сервер. Замість справжньої IP-адреси, використовуються IP/DNS адреси пулу VPN-мережі. Таким чином, ви зможете здійснювати анонімний серфінг, обходити цензуру та блокування. Також VPN підійде для організації безпечного інтернет-доступу всередині компанії чи організації. VPN можна підключити на будь-якому пристрої.
  • Зміна геолокації. Деякі ресурси надають дозвіл тільки для певного списку країн. Завдяки VPN, ви зможете змінювати IP-адреси серверів, які належать мережі VPN, тим самим підмінивши свою геолокацію. Однак, якщо цифровий слід вашого браузера (fingerprint) не збігатиметься з геолокацією – антифрод та firewall системи, такі як Cloudflare, заблокують вас. Тому, щоб досягти справжньої анонімності, необхідно ретельно “зашифрувати” свій справжній профіль.
  • Якісне інтернет-з’єднання. У деяких випадках використання VPN  може суттєво покращити якісь інтернету, позбавляючи лімітів на пропускну ширину каналу. Більшість інтернет-провайдерів здійснюють моніторинг трафіку і може застосовувати обмеження швидкості за тих чи інших умов.
  • Захист від перехоплення даних. При відвідуванні ненадійних, фішингових сайтів або підключенні до фейкових Wi-Fi точок-доступу, інтернет-трафік користувача (якщо він не зашифрований) може бути перехоплений, а його чутливі дані, такі як паролі, кукі, сесії – викрадені. VPN-з’єднання унеможливлює ряд MITM-атак “Людина посередині” (Man-in-the-Middle), гарантуючи цілісність і доступність інформації. Будь-який обмін даними по VPN повністю захищений.
  • Захист приватних даних. Ви зможете зберігати в приватності дані додатків, якими користуєтеся, якщо вони проходять через VPN. Наприклад, месенджери, браузери, торенти.

Як працює VPN

Історія протоколів VPN

Історія VPN тісно пов’язана з появою мережі ARPANET. Перші спроби створення віртуальних мереж робилися ще у 1960-1970-х роках компаніями, які володіли АТС й обслуговували телефонні лінії. Ними були створені віртуальні станції для з’єднання груп абонентів. Зокрема велику роль у цьому напрямі відіграли американські зв’язківці AT&T Bell Laboratories.

У 1990-х роках зі стрімким розвитком інтернету, великі компанії та науково-дослідні організації почали створювати власні закриті мережі, а разом з тим з’явилася гостра потреба зашифрувати пакети TCP/IP, які по ним проходять. У 1993-му в Колумбійському університеті професором Джоном Іоаннідісом була досліджена технологія безпеки протоколу IP, яка передбачала тунелювання і шифрування трафіку.

PPTP

Перший прототип VPN з’явився у 1996 році, коли співробітником Microsoft був створений протокол PPTP (Point-to-Point Tunneling Protocol, “Точка-точка”). Його специфікація була опублікована у 1999 році в стандарті RFC 2637. Він багато у чому спирався на схожий протокол від Cisco – L2F (Layer 2 Forwarding).

Протокол PPTP є пропрієтарним (закритий вихідний код) і працює за технологією GRE (General Routing Encapsulation), розрболеною Сisco. Порт по замовчуванню – TCP 1723. Шифрування забезпечується протоколом MPPE (Microsoft Point-to-Point Encryption).

ЧИТАЙТЕ ТАКОЖ:  Linux Mint: історія, встановлення, налаштування

PPTP був колись одним з найпоширеніших VPN-протоколів та мав широку підтримку на багатьох пристроях і платформах. Однак, на сьогодні вважається застарілим й найменш безпечним. Адже застосовує 128-бітне шифрування, а деякі його технології аутентифікації мають офіційно зареєстровані вразливості (MS-CHAP-v1/v2).

L2TP

L2TP (Layer 2 Tunneling Protocol) є покращеним варіантом PPTP та L2F. Являє собою пропрієтарний протокол тунелювання. З’явився у 1999 році як винахід двох компаній – Cisco та Microsoft. Відповідає стандарту RFC 3931. Його особливістю є подвійна UDP-інкапсуляція (тунелювання), підтримка 256-бітнного шифрування AES/3DES, робота не лише в стеку TCP/IP, а й ATM, X.25, Frame Relay мережах. По замовчуванню використовується порт – UDP 1701.

L2TP сам по собі не здійснює шифрування, а разом з іншими подібними протоколами VPN використовує технологію IPSec (IP Security), яка шифрує інтернет-пакети і була розроблена ВМС США. Її особливістю є те, що IPSec додає до інтернет-пакетів спеціальні заголовки, які називаються – інкапсуляції. Зокрема, AH (Authentication Header) та ESP (Encapsulating Security Protocol). Вони забезпечують цілісність і конфіденційність переданих даних.

У 2013 році в рамках витоку так-званих “документів Сноудена”, поповзли чутки, що L2TP/IPSec містив бекдори АНБ. Цю інформацію пізніше частково підтвердив засновник EFF Джон Гілмор. За його словами, Агенство Національної Безпеки США свідомо послаблювало цей протокол.

IPSec протокол

Схема роботи IPSec

IKEV2

IKEv2 (Internet Key Exchange) – є одним з найшвидших та надійніших VPN-протоколів. Шифрування в ньому теж реалізується на базі IPSec. Перша версія IKEv1 вийшла у 1998 році. Протокол увібрав в себе технологію шифрування IPSec й підтримує 256-бітні ключі шифрування: AES, Blowfish, Camelia тощо. Як видно з назви, він здійснює обмін ключами між різними вузлами Internet. Гарантує якісне та стабільне VPN-з’єднання. Споживає мінімум ресурсів, не потребує високої пропускної здатності.

Завдяки протоколу MOBIKE (Mobility and Multi-homing), чудово працює на мобільних пристроях, може автоматично перепідключатися при обриві інтернет-з’єднання, а отже унеможливлює витік даних. Також IKEv2 підтримує такі криптографічні протоколи як: ISAKMP, SKEME, OAKLEY. Його перевагою є те, що він може швидко перепід’єнуватися при обривах. Чудово підходить для мобільних пристроїв.

Серед мінусів – порт IKEv2 може блокуватися деякими інтернет-провайдерами. Він є Windows-орієнтованим і не надто легкий у налаштуванні на Unix-подібних системах.

Протокол IKEv2

SSTP

SSTP (Secure Socket Tunneling Protocol) – ще один протокол, розроблений компанією Microsoft у 2007 році. Його ще називають “Microsoft SSL VPN”. Являє собою оновлений PPTP.  Шифрування тут здійснюється не через IPSec, а стандартні SSL/TLS. Порт по замовчуванню – TCP 443. Підтримуються методи аутентифікації EAP-TLS і MS-CHAP, а також IPv6. SSTP клієнти вбудовані в усі операційні системи Microsoft починаючи з Vista. Показує непогану швидкість і покриття.

OPENVPN

OpenVPN – один з найстаріших та найавторитетніших VPN-протоколів, заснований Джеймсом Йонаном у 2001 році. Протокол кросплатформний, має відкритий вихідний код та розповсюджується по безкоштовній ліцензії GNU GPL. Працює на базі 256-бітного шифрування (алгоритми AES-256-GCM, Blowfish, Camelia). Варто додати, що AES на сьогодні вважається золотим стандартом шифрування серед криптографічних алгоритмів. Він був розроблений NIST у 2001 році на заміну скомпрометованому DES.

OpenVPN застосовує бібліотеку OpenSSL, що також надає підтримку усіх сучасних криптографічних примітивів: ChaCha20, Poly1305, Blowfish, AES, PFS та інші. Працює як на TCP, так і UDP портах, що робить його універсальним та ускладнює процес визначення / блокування збоку провайдерів. Для роботи потребує додаток – клієнт Openvpn, який буває CLI та GUI.

Сервіс багатофункціональний й підтримує чимало технологій (NAT, LDAP, 2FA), легко налаштовується в різних середовищах і легко масштабується. Цікаво, що в оприлюднених документах Едварда Сноудена говориться, що АНБ США через програму стеження XKEYSCORE може “зламати” OpenVPN, але лише за умови використання спільного ключа. Тобто, фактично він досі є незламаним.

ЧИТАЙТЕ ТАКОЖ:  Як аналізувати навантаженість VPS-сервера?

Протокол OpenVPN

WIREGUARD

WireGuard – VPN-протокол нового покоління з відкритим кодом, розроблений у 2016 році Джейсоном Доненфелдом. Написаний на мовах програмування С та Go. Містить всього лиш 4000 рядків коду. Використовує різні високопродуктивні та стійкі криптографічні алгоритми: ChaCha20, Poly1305, Curve25519, Sip-Hash, BLAKE2s Підтримується також технологія прямої секретності для захисту ключів від компрометації – Perfect Forward Secrecy (PFS).

За рахунок мінімальності і вбудованості в ядро Linux, WireGuard є таким швидким, компактним та продуктивним. ВІн пройшов незалежний аудит й був долучений як компонент в ОС Linux у 2020 році. Протокол можна налаштувати на використання практично будь-якого порту, однак зазвичай працює на UDP. Ним підтримуються різні платформи і не складно розгорнути на власному VPS-сервері. Для Android існує окремий WireGuard-клієнт. На сьогодні, це один з найшвидших протоколів VPN.

Протокол WireGuard

Який VPN-сервіс обрати? Короткий огляд популярних провайдерів.

На сьогодні, на ринку інтернет-послуг існує чимало VPN-сервісів – як платних, так і безкоштовних. Кожен з них відрізняється набором технологій та політикою використання даних. Останній момент дуже важливий, адже визначає порядок обробки даних користувачів, відповідає за збір статистики і зберігання логів (журналів) на сервері. Тому, до вибору VPN-провайдера треба поставитись максимально серйозно. Це може вплинути на вашу безпеку та конфіденційність. Наприклад, ненадійний оператор VPN може перехоплювати дані і читати трафік. Переважно, цим займаються зловмисники, які маскуються під VPN-сервіси. Тому ретельно перевіряйте постачальника. Нижче ми зібрали безкоштовні та платні VPN-сервіси на які варто, на нашу думку, звернути увагу.

Best VPN Review by KR. Laboratories

  • NordVPN – VPN-сервіс Premium-класу, заснований у 2012 році ІТ-спеціалістами спочатку для власних потреб, щоб захистити себе та своїх рідних і друзів від цензури та стеження в інтернеті. Пізніше NordVPN став доступним публічно. VPN працює на протоколах IKEv2/IPsec/WireGuard, гарантує високу якість, швидкість та стабільність інтернет-з’єднання. У ньому застосовуються 256-бітні AES-ключі шифрування. Сервіс нараховує близько 5500 серверів у 60 країнах світу. Підтримуються операційні системи Windows, Linux, MacOS, Android. Є додатки для браузерів Firefox та Chrome. У березні 2023 року “скандинави” ввели безкоштовну функцію Meshnet. Власники NordVPN беруть активну участь в соціальних проєктах, таких як VPN Trust Initiative (VTI), доносячи до людей важливість кібербезпеки. Для дослідників безпеки запущено BugBounty на платформі HackerOne. Загалом, один з кращих VPN в категорії “Ціна/Якість”.
  • Mullvad VPN – ще один флагманський VPN-сервіс, орієнтований на конфіденційність і безпеку. Заснований у Швеції, в місті Гетеборг у 2009 році. Як заявляють розробники: “…наша місія полягає в тому, щоб навчати та інформувати населення про проблему масового спостереження та цензури. Водночас ми щодня вдосконалюємо власний сервіс і досліджуємо майбутнє безпеки даних”. VPN Mullvad заснований на протоколах OpenVPN і WireGuard. Сервіс платний – вартість становить 5 євро/місяць. Один обліковий запис можна використовувати максимум на 5 пристроях. Додаток кросплатформний, підтримуються усі сучасні операційні системи: Windows/Linux/Android/MacOs/iOS. В арсеналі величезна кількість серверів і локацій в різних куточках світу. Як повідомляють власники, Mullvad не збирає логи та знеособлює користувацькі дані. Продукт відповідає регламенту GDPR щодо захисту персональних даних. На сайті присутній хороший технічний опис і документація додатка. Аудити безпеки проводяться регулярно. Користувач має змогу придбати VPN за криптовалюту, що дозволить приховати платіжні дані. Mullvad VPN дуже зручний і простий в роботі, має чимало корисних налаштувань: підтримка IPv6, функція Kill Switch, блокування трекерів і реклами, опції протоколів OpenVPN і Wireguard, використання власних DNS, тунелінг і багато іншого. Є підтримка CLI. Вихідний код додатка розміщений у відкритому доступі. Bug Bounty програми немає, але про баги чи вразливості можна повідомити в технічну підтримку. На наше переконання, це досить швидкісний і якісний VPN. Може навіть використовуватися як акселератор інтернету. У поєднанні з Mullvad Browser – виступає потужним антидетект-засобом, який унеможливлює будь-який витік цифрового сліду.
  • ProtonVPN – функціональний і легкий VPN, розроблений швейцарськими криптографами, засновниками відомого поштового сервісу Proton Mail. VPN-сервіс працює на базі IKEv2, OpenVPN та WireGuard протоколів. Орієнтований на швидкість та якість. Сервіс налічує більше 1900 серверів в понад 65 країнах світу. Містить чимало корисних та ексклюзивних налаштувань, наприклад вбудований VPN-акселератор, функція Kill Switch (запобігання розкриттю IP при обриві з’єднання), блокувальник реклами NetShield, анонімний DNS, інтеграція з TOR-мережею та Torrent P2P. Додатком підтримуються усі платформи: Android, iPhone, Mac, Windows, Linux. Є окрема безкоштовна версія VPN з підтримкою 1 пристрою та 1 локації. Як заявляють представники компанії, Proton VPN не зберігає логи користувачів. Компанію рекомендують на рівні ООН та Європейської Комісії з прав людини.
  • Windscribe VPN – VPN-сервіс з величезним вибором гео-локацій (понад 60 країн світу), надійним шифруванням (AES-256, SHA512, 4096-bit RSA), підтримкою різних протоколів (IKEv2, OpenVPN, WireGuard, SOCKS) та платформ (Windows, Linux, Android). Сервіс був заснований білорусом Єгором Саком та Алексом Пагуїсом. Штаб-квартира базується в Торонто, Канаді. Як заявляють власники, Windscribe утримується самотужки і не співпрацює з жодними рекламними компаніями чи іншими структурами. Додатки Windscribe мають відкритий вихідний код й розміщені на GitHub. Можна скористатися розширеннями для браузерів Firefox та Chrome. В Windscribe є безкоштовний тарифний план з трафіком 10GB та 10-ма локаціями. В 2021 році два сервери Windscribe були конфіксовані українською владою в рамках якогось розслідування. Як виявилося, вони не мали шифрування, містили застарілі компоненти і використовували OpenVPN як протокол. Але завдяки підтримці Perfect Forward Secrecy у них не було доступу до історичних даних і вони не змогли скомпрометувати всю мережу. У 2023-му році на засновника Windscribe відкрив кримінальну справу Інтерпол Греції, через те що їх сервери були використані в несанкціонованому доступі до інформаційних систем. 11 квітня 2025 року через відсутність доказів і логів, обвинувачення було повністю знято.
  • Calyx VPN – безкоштовний VPN-сервіс від некомерційної дослідницької організації Calyx Institute (Нью-Йорк, США), засновників операційної системи CalyxOS для мобільних пристроїв. Характеризується відносними простотою, надійним та захищеним з’єднанням. Є окремий додаток для Android (доступний в репозиторії F-Droid). Серед мінусів – іноді може бути нестабільне з’єднання, мало локацій.
  • RiseupVPN – безкоштовний VPN від некомерційної незалежної фундації Riseup, яка пропагує анонімність в інтернеті й надає різні безкоштовні сервіси, серед яких VPN. RiseupVPN повністю автоматичний, з розряду “поставив і забув”. Є додаток для мобільного (доступний в репозиторії F-Droid). Загалом, крутий безкоштовний VPN для Android-смартфонів. З недоліків – мало локацій.
  • OpenVPN – добре відома безкоштовна платформа для розгортання VPN-сервера на базі однойменного протоколу OpenVPN. Вже понад 20 років славиться своєю стабільністю та надійністю. Підтримуються всі платформи і операційні системи. Є Android-додаток. Для підключення необхідно додати файл конфігурації VPN-сервера. Можна скористатися списком безкоштовних OpenVPN-серверів.
ЧИТАЙТЕ ТАКОЖ:  Встановлюємо Adobe Photoshop в Linux

Чому не TOR?

TOR можна використовувати у поєднанні з VPN, але повністю замінити його він не зможе через наступні причини:

  • Інтернет-провайдер може блокувати доступ до TOR-мережі;
  • Веб-сайти можуть блокувати відвідувачів, які використовують TOR;
  • TOR впливає на швидкість інтернет-серфінгу, адже збільшується затримка і зменшується ширина каналу (пропускна здатність);
  • TOR не гарантує 100% анонімності, конфіденційності і безпеки. Мережа складається з різних децентралізованих вузлів, які у свою чергу можуть взламуватися, перехоплюватися, контролюватися адміністраторами.

Як перевірити VPN на витік?

DNS leak test

Ось кращі онлайн-сервіси, які дозволяють безкоштовно перевірити витік даних при використанні VPN:

Додаткові джерела та посилання

  1. L2TP over IPsec virtual private network connections
  2. VPN Company Relationships Mindmap

Автор: © Konrad Ravenstone, KR. Laboratories Research

Konrad Ravenstone// про автора

Кібермольфар, хакер, лінуксоїд, дослідник безпеки в KR. Labs Research

Сподобалася стаття? Поділитися в соцмережах:
KR. Labs Research
Рекомендоване:
Веб-розробка - це широка галузь IT, яка включає безліч інструментів…