VPN

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук

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

Прикладом створення віртуальної мережі використовується інкапсуляція протоколу PPP в будь-який інший протокол — IP (ця реалізація називається також PPTP — Point-to-Point Tunneling Protocol) або Ethernet (PPPoE). Деякі інші протоколи так само надають можливість формування захищених каналів (SSH).

Структура VPN[ред.ред. код]

Класифікація VPN

VPN складається з двох частин: «внутрішня» (підконтрольна) мережа, яких може бути декілька, і «зовнішня» мережа, через яку проходять інкапсульовані з'єднання (зазвичай використовується Інтернет).

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

VPN тунелі[ред.ред. код]

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

Кожен peer відповідає за шифрування даних до того, як вони потраплять в тунель і розшифровку цих даних після того, як вони покинуть тунель.

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

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

За наявності шлюзу, користувач встановлює з'єднання з ним, після чого користувачеві відкривається доступ до мережі(домену шифрування).

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

Мережа A вважається доменом шифрування VPN- шлюзу A, а мережа B — доменом шифрування VPN- шлюзу B, відповідно. Коли користувач мережі A виявляє бажання відправити дані до мережі B, VPN шлюз A зашифрує їх і відішле через VPN- тунель. VPN шлюз B розшифрує інформацію і передасть одержувачеві в мережі B.

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

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

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

Існує багато варіантів VPN- шлюзів і VPN- клієнтів. Це може бути апаратний пристрій або програмне забезпечення, яке встановлюється на маршрутизаторах або на ПК. Скажімо, ОС FreeBSD поставляється разом з ПЗ для створення VPN- шлюзу і для налаштування VPN- клієнта. Свої VPN- рішення існують і для ПО компанії Microsoft.

На щастя, в Інтернет є багато джерел інформації про VPN, технічні статті, FAQ і варіанти налаштувань. Я можу порекомендувати Tina Bird's VPN Information, VPN Labs, і Virtual Private Network Consortium(VPNC).

Назалежно від використовуваного ПО, усі VPN працюють по наступних принципах:

  1. Кожен з вузлів ідентифікує один одного перед створенням тунеля, щоб упевнитися, що шифровані дані будуть відправлені на потрібний вузол.
  2. Обидва вузли вимагають заздалегідь налаштованої політики, що вказує, які протоколи можуть використовуватися для шифрування і забезпечення цілісності даних.
  3. Вузли звіряють політики, щоб домовитися про використовувані алгоритми; якщо це не виходить, то тунель не встановлюється.
  4. Як тільки досягнута угода по алгоритмах, створюється ключ, який буде використаний в симетричному алгоритмі для шифрування/розшифровки даних.

Є декілька стандартів, що регламентують вищеописану взаємодію. Ви, мабуть, чули про деяких з них: L2TP, PPTP, і IPSec. Оскільки IPSec — найширше підтримуваний стандарт, частину статті, що залишилася, варто присвятити саме йому.

Класифікація VPN за типом використовуваного середовища[ред.ред. код]

VPN класифікують за типом використовуваного середовища таким чином:

  • Захищені

Найпоширеніший варіант віртуальних приватних мереж. З його допомогою можливо створити надійну і захищену підмережу на основі ненадійної мережі, зазвичай, Інтернету. Прикладом захищених протоколів VPN є: Ipsec, SSL та PPTP. Прикладом використання протоколу SSL є програмне забезпечення OpenVPN.

  • Довірчі

Використовують у випадках, коли середовище, яким передають дані, можна вважати надійним і необхідно вирішити лише завдання створення віртуальної підмережі в рамках більшої мережі. Питання забезпечення безпеки стають неактуальними. Прикладами подібних VPN рішень є: Multi-protocol label switching (MPLS) і L2tp (Layer 2 Tunnelling Protocol). (Коректніше сказати, що ці протоколи перекладають завдання забезпечення безпеки на інших, наприклад L2tp, як правило, використовують разом з Ipsec).

Захист інформації[ред.ред. код]

Захист інформації в розумінні VPN включає в себе шифрування (encryption), підтвердження справжності (authentication) та контроль доступу (access control). Кодування увазі шифрування переданої через VPN інформації. Читати всі отримані дані може лише володар ключа до шифру.Найбільш часто використовуваними в VPN-рішеннях алгоритмами кодування в наш час є DES, Triple DES і різні реалізації AES. Ступінь захищеності алгоритмів, підходи до вибору найбільш оптимального з них - це теж окрема тема, яку ми не в змозі обговорити.Підтвердження справжності включає в себе перевірку цілісності даних та ідентифікацію осіб та об'єктів, задіяних у VPN. Перша гарантує, що дані дійшли до адресата саме в тому вигляді, в якому були послані. Найпопулярніші алгоритми перевірки цілісності даних на сьогодні - MD5 і SHA1.Контроль трафіку увазі визначення і керування пріоритетами використання пропускної смуги VPN. З його допомогою ми можемо встановити різні пропускні смуги для мережевих додатків і сервісів в залежності від ступеня їхньої важливості.

Рівні реалізації[ред.ред. код]

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

Користувачі Microsoft Windows позначають терміном VPN одну з реалізацій віртуальної мережі — PPTP, причому вона частіше використовується не для створення приватних мереж.

Найчастіше для створення віртуальної мережі використовується інкапсуляція протоколу PPP в який-небудь інший протокол — IP (такий спосіб використовує реалізація PPTP — англ. Point-to-Point Tunneling Protocol) або Ethernet (PPPoE) (хоча і вони мають відмінності). Технологія VPN останнім часом використовується не тільки для створення приватних мереж, але і деякими провайдерами на пострадянському просторі для надання виходу в Інтернет.

При належному рівні реалізації та використанні спеціального програмного забезпечення мережа VPN може забезпечити високий рівень шифрування переданої інформації. При правильному підборі всіх компонентів технологія VPN забезпечує анонімність в Мережі.

VPN-міст[ред.ред. код]

Класифікація VPN

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

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

За способом реалізації[ред.ред. код]

  • У вигляді спеціалізованого програмно-апаратного забезпечення, призначеного саме для вирішення завдань VPN. Прикладом такого рішення є російський комплекс «Континент-К», що має необхідні дозвільні документи від Держтехкомисії і ФАПСІ. Основна перевага таких пристроїв — їх висока продуктивність і більш висока в порівнянні з іншими рішеннями захищеність. Ці пристрої можуть застосовуватися в тих випадках, коли необхідно забезпечити захищений доступ великого числа абонентів. Недолік таких рішень полягає в тому, що управляються вони окремо від інших рішень по безпеці, а це ускладнює завдання адміністрування інфраструктури безпеки, особливо при нестачі співробітників відділу захисту інформації. Ця проблема виходить на перше місце при побудові великої і територіально-розподіленої мережі, що налічує десятки облаштувань побудови VPN, не рахуючи такого ж числа міжмережевих екранів, систем виявлення атак і так далі. Прикладом такого рішення є Cisco 1720 або Cisco 3000.
  • У вигляді програмного рішення, що встановлюється на звичайний комп'ютер, що функціонує, як правило, під управлінням операційної системи UNIX. Російські розробники особливо полюбили ОС FreeBSD, і на її вивченій «вздовж і поперек» базі побудовані вітчизняні рішення «Континент-К» і « Шпилька». Для прискорення обробки трафіку можуть бути використані спеціальні апаратні прискорювачі, замінюючі функції програмного шифрування. У вигляді програмного рішення реалізуються також абонентські пункти, призначені для підключення до мережі видалених і мобільних користувачів, що захищається.
  • Інтегровані рішення, в яких функції побудови VPN реалізуються разом з функцією фільтрації мережевого трафіку, забезпечення якості обслуговування або розподілу смуги пропускання. Основні переваги цього рішення — централізоване управління усіма компонентами з єдиної консолі і нижча вартість з розрахунку на кожен компонент в порівнянні з ситуацією, коли такі компоненти отримуються окремо. Мабуть, найвідомішим прикладом такого інтегрованого рішення є VPN — 1 від компанії Check Point Software, що включає, окрім VPN- модуля, модуль, що реалізовує функції міжмережевого екрану, модуль, що відповідає за балансування навантаження, розподіл смуги пропускання і так далі. Це рішення має сертифікат Держтехкомисії Росії.

За призначенням[ред.ред. код]

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

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

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

Internet VPN Використовують для надання доступу до інтернету провайдерами, у випадку якщо по одному фізичному каналу підключаються декілька користувачів.

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

За типом протоколу[ред.ред. код]

Існують реалізації віртуальних приватних мереж під TCP/IP, IPX і AppleTalk. На сьогоднішній день спостерігається тенденція до загального переходу на протокол TCP/IP, і абсолютна більшість VPN рішень підтримує саме його. Адресація в ньому найчастіше вибирається згідно зі стандартом RFC 5735, з діапазону Приватних мереж TCP/IP

За рівнем мережевого протоколу[ред.ред. код]

За рівнем мережевого протоколу на основі зіставлення з рівнями еталонної мережевої моделі ISO/OSI.

До VPN належать[ред.ред. код]

IPSec (IP security) — часто використовується поверх IPv4.

PPTP (point-to-point tunneling protocol) — розроблявся спільними зусиллями декількох компаній, включаючи Microsoft.

PPPoE (PPP (Point-to-Point Protocol) over Ethernet)

L2TP (Layer 2 Tunnelling Protocol) — використовується в продуктах компаній Microsoft і Cisco.

L2TPv3 (Layer 2 Tunnelling Protocol version 3).

OpenVPN SSL VPN з відкритим вихідним кодом, підтримує режими PPP, bridge, point-to-point, multi-client server

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

Алгоритми хешування і шифрування[ред.ред. код]

Безпека передачі усієї інформації є наріжним каменем популярності VPN- мереж. Організації працюючі з використанням цієї технології можуть не побоюватися того що їх інформація може потрапити в руки зловмисникам або конкурентам. Як додатковий захист може використовуватися технологія ідентифікації користувачів. Це може бути як сертифікат відповідності, пароль так і сучасний вигляд біометричної і майнової ідентифікації. Усі дані передавані через шлюз перевіряються на цілісність, що дозволяє гарантувати точну доставку інформації одержувачеві. Завдяки усім цим якостям VPN є кращою технологією по організації віртуальної локальної мережі і віддаленому доступу до неї. Система не лише відрізняється безпекою і швидкодією, але і дозволяє істотно понизити витрати, що є украй важливим в складних ринкових умовах.

Переваги технології VPN[ред.ред. код]

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

Недоліки технології VPN[ред.ред. код]

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

Див. також[ред.ред. код]

Література[ред.ред. код]

  • Иванов М. А. Криптографические методы защиты информации в компьютерных системах и сетях. — М.: КУДИЦ-ОБРАЗ, 2001. — 368 с.
  • Кульгин М. Технологии корпоративных сетей. Энциклопедия. — СПб.: Питер, 2000. — 704 с.
  • Олифер В. Г., Олифер Н. А. Компьютерные сети. Принципы, технологии, протоколы: Учебник для вузов. — СПб.: Питер, 2001. — 672 с.
  • Романец Ю. В.. Тимофеев П. А., Шаньгин В. Ф. Защита информации в компьютерных системах и сетях. 2-е изд. — М: Радио и связь, 2002. −328 с.
  • Столлингс В. {{{Заголовок}}}. — ISBN 0-13-016093-8.

Список електронних джерел[ред.ред. код]