1. Знайомство з VPN

Virtual Private Network або VPN – це буквально віртуальна приватна мережа. Швидше за все, тобі вже знайоме слово VPN, якщо колись тобі хотілося підмінити країну у браузері телефону чи комп'ютера. З VPN все просто: запустив програму, обрав країну – готово.

Хоча VPN до країн, власне, ніякого стосунку не має. Справи влаштовано трохи інакше.

Уяви, що ти працюєш в офісі на комп'ютері, і в цьому офісі є різне комп'ютерне обладнання з мережевим доступом: комп'ютери, сервери, принтери, обладнання для відеоконференцій.

Ситуація 1: твій офіс розширився, і ти вирішуєш переїхати на сусідній поверх. Ти береш свій комп'ютер, переносиш його до іншої кімнати, підключаєш в іншу розетку – і доступ до всіх серверів і комп'ютерів компанії у тебе зберігся.

Швидше за все, твій комп'ютер звертається тепер до іншого роутера, але всі роутери твоєї компанії знають, як спілкуватися один з одним і забезпечують тобі всі плюси перебування в одній локальній мережі. У тебе немає проблем із доступом до будь-якого обладнання в корпоративній мережі.

Ситуація 2: почалася пандемія, і ти вирішуєш працювати з дому. Ти забираєш робочий комп'ютер додому, але от халепа: доступу до офісних серверів вдома немає. Начебто логічно, адже вони залишилися в офісі в іншому кінці міста. З іншого боку, постає питання. Після перенесення комп'ютера в першому випадку доступ до офісних комп'ютерів у тебе зберігся. У другому випадку немає доступу. Що змінилося?

У першому випадку всі комп'ютери у твоєму офісі (навіть ті, які розташовано на різних поверхах) знаходилися в одній локальній мережі. А у другому випадку – ні. Твій комп'ютер вдома не підключений до офісної локальної мережі. Отже, у тебе немає доступу до внутрішніх ресурсів офісної мережі.

Для усунення цієї проблеми запропоновали рішення – віртуальну локальну мережу (VPN). У тебе в офісі на кожному поверсі стояло по роутеру, які пересилали між собою дані та забезпечували роботу локальної мережі.

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

VPN-сервер налаштовує системний адміністратор в офісі, а VPN-клієнт зараз є у кожному комп'ютері та/або телефоні.

Ти запускаєш у себе на комп'ютері VPN-клієнт і конектишся з його допомогою до VPN-сервера. Тепер комп'ютер думає, що він знаходиться всередині локальної мережі, в якій розташовано VPN-сервер.

Якщо ти тепер запустиш у себе браузер, всі дані від нього підуть до твого локального віртуального роутера (VPN-клієнта), з нього – до віртуального роутера компанії (VPN-сервера), а потім уже – у світ через інтернет-шлюз офісу твоєї компанії.

Зовнішня IP-адреса твого комп'ютера тепер збігатиметься з публічною IP-адресою твого офісу. І якщо цей офіс був, наприклад, у Німеччині, сервер, до якого звертався твій браузер впевнений, що ти в офісі в Німеччині.

2. Типи VPN

Мережі VPN розподіляються за цільовими функціями. Можна виділити багато різних, але ось список типових варіантів VPN-рішень:

Intranet VPN

Використовується для об'єднання в єдину захищену мережу кількох розподілених філій однієї організації, що обмінюються даними через відкриті канали зв'язку. Це перший варіант, з якого все почалося.

Remote-access VPN

Використовується для створення захищеного каналу між сегментом корпоративної мережі (центральним офісом або філією) та одиночним користувачем, який, працюючи вдома, підключається до корпоративних ресурсів із домашнього комп'ютера, корпоративного ноутбука, смартфона чи інтернет-кіоску. Саме цей варіант у тебе, якщо ти працюєш із дому та підключаєшся до офісу через VPN.

Extranet VPN

Використовується для мереж, до яких підключаються зовнішні користувачі (наприклад, замовники або клієнти). Рівень довіри до них набагато нижчий, ніж до співробітників компанії, тому потрібне забезпечення спеціальних "рубежів" захисту, що запобігають або обмежують доступ останніх до особливо цінної, конфіденційної інформації.

Internet VPN

Використовується провайдерами для надання доступу до інтернету, зазвичай якщо через один фізичний канал підключаються декілька користувачів. Протокол PPPoE став стандартом ADSL-підключень.

L2TP був поширений у середині 2000-х років у будинкових мережах: на той час внутрішньомережевий трафік не оплачувався, а зовнішній коштував дорого. Це дозволяло контролювати витрати: коли VPN-з'єднання вимкнено, користувач нічого не сплачує.

Наразі дротовий інтернет дешевий або безлімітний, а на стороні користувача найчастіше є маршрутизатор, на якому вмикати-вимикати інтернет не так зручно, як на комп'ютері. Тому L2TP-доступ відходить у минуле.

Client/server VPN

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

Наприклад, коли треба розділити трафік між фінансовим департаментом та відділом кадрів, які звертаються до серверів, що знаходяться в одному фізичному сегменті. Цей варіант схожий на технологію VLAN, але замість розподілу трафіку використовується його шифрування.

3. OpenVPN

Пам'ятаєш, ми говорили про віртуальний роутер на стороні офісу, до якого можна підключитися за допомогою VPN-клієнтів? Так ось, є одне дуже популярне рішення, про яке тобі буде корисно дізнатися. Це OpenVPN.

OpenVPN – це безкоштовна програма, яка реалізує технологію віртуальної приватної мережі (VPN). Вона підтримує два популярні режими роботи: клієнт-сервер і точка-точка, коли потрібно об'єднати дві великі мережі.

Вона підтримує хороший рівень шифрування трафіку між своїми учасниками, а також дозволяє встановлювати з'єднання між комп'ютерами, що знаходяться за NAT і мережевим екраном, без зміни їх налаштувань.

Для забезпечення безпеки керуючого каналу та потоку даних OpenVPN використовує бібліотеку OpenSSL. Це дозволяє використовувати весь набір алгоритмів шифрування, які доступні в цій бібліотеці.

Також може використовуватися пакетна автентифікація HMAC для забезпечення більшої безпеки та апаратне прискорення для покращення продуктивності шифрування. Ця бібліотека використовує OpenSSL, а точніше – протоколи SSLv3/TLSv1.2.

Є реалізації цієї програми під всі популярні операційні системи: Solaris, OpenBSD, FreeBSD, NetBSD, GNU/Linux, Apple Mac OS X, QNX, Microsoft Windows, Android, iOS.

OpenVPN пропонує користувачеві кілька видів аутентифікації:

  • Передвстановлений ключ – найпростіший метод.
  • Сертифікатна автентифікація – найбільш гнучкий метод налаштування.
  • За допомогою логіну та пароля може використовуватися без створення клієнтського сертифіката (серверний сертифікат все одно потрібен).

Технічна інформація

OpenVPN проводить усі мережеві операції через TCP- або UDP-транспорт. Загалом перевага надається UDP, тому що через тунель проходить трафік мережевого рівня і вище за OSI, якщо використовується TUN-з'єднання, або трафік канального рівня і вище, якщо використовується TAP.

Це означає, що OpenVPN для клієнта виступає протоколом канального або навіть фізичного рівня, а це означає, що надійність передачі може забезпечуватися вищими за OSI рівнями, якщо це необхідно.

Зважаючи на те, що ми добре розібрали модель OSI, ти маєш розуміти, про що тут йдеться.

Саме тому протокол UDP за своєю концепцією найбільш близький до OpenVPN, оскільки він, як і протоколи канального та фізичного рівнів, не забезпечує надійності з'єднання, передаючи цю ініціативу вищим рівням. Якщо ж налаштувати тунель на роботу з ТСР, сервер у типовому випадку отримуватиме ТСР-сегменти OpenVPN, які містять інші ТСР-сегменти від клієнта.

Також, що важливо, OpenVPN може працювати через більшу частину проксі-серверів, включно з HTTP, SOCKS, через NAT і мережеві фільтри. Сервер може бути налаштовано на призначення мережевих налаштувань клієнту. Наприклад, IP-адреса, налаштування маршрутизації та параметри з'єднання.

undefined
3
Опрос
null,  8 уровень,  5 лекция
недоступен
null
Влаштування мережі