Сигурност на Виртуални Частни Мрежи и прилагането им в малки и средни предприятия



страница1/4
Дата26.08.2016
Размер0.67 Mb.
#7366
  1   2   3   4
Д
епартамент Информатика, Бакалавърски факултет

Дипломна работа



НА ТЕМА: Сигурност на Виртуални Частни Мрежи и прилагането им в малки и средни предприятия

ДИПЛОМАНТ:

/ Тони Вета Фак.No.28879/ . . . . .
РЪКОВОДИТЕЛ:

/ доц. д-р. Николай Докев / . . . . .

ЮНИ, 2010г.

СЪДРЖАНИЕ

УВОД

Основната цел в настоящата дипломна работа е анализиране на проблемите, свързани с реализацията на VPN в малки и средни предприятия, избор на подходящи технологични решения, както и практически реализации на тези решения. Или по-точно поставената задача е реализация на VPN решение за малка фирма, която трябва да позволи на своите служители възможност за сигурно свързване към локалната мрежа на фирмата, извън нейните помещения.

Дипломната работа се състои от пет глави, Увод и Заключение. В първата глава се представят всички основни понятия свързани с виртуални частни мрежи. В втората глава са описани използваните технологии във VPN. Описват се подробно IPSec, PPTP, L2F, L2TP. В третата глава се описва проблемът или поточно задачата която искаме да решим, изборът на VPN сървър и VPN клиент. Четвъртата глава решава практически поставената задача. Описват се настройките както на сървъра така и клиента. Тества се връзката и различните протоколи.

В Глава V. разглеждаме OpenVPN като начин за решаване на поставената задача от третата глава. Описват се предимствата и недостатъците. Практически се решава задачата, както за Windows OS за сървър и клиенти, така и за Линукс Убунту 10.04.



Какво е VPN?

VPN ( Virtual Private Network ) e съкращение за виртуални частни мрежи. Това е технология, която дава възможност за сигурно свързване на компютри или частни мрежи в обща виртуална частна мрежа чрез частна или явна мрежова инфраструктура, най-често Интернет.

За разлика от частните мрежи, които използват наети линии за комуникация, VPN може да работи и чрез явни мрежи, при което се създава защитен канал между крайните две точки.

Това най-вече води до някакви, често големи, финансови спестявания.

Вместо за технология, често VPN се използва като съкращение за частна мрежа установена чрез явна телекомуникационна инфраструктура.






Постоянна връзка
ИНТЕРНЕТ

Защитен канал

Опростен пример на VPN



За кого е предназначен?

Най-голяма полза от VPN имат фирми които имат свои клонове разпределени в повече държави. Тъй като телефонната връзка помежду им е скъпа, VPN се явява като много разумно решение. Връзката помежду ISP-то (Internet Service Provider) – Интернет доставчикът, е далеч по-евтина.

Освен тях, полза имат и всички останали фирми, които имат географски отделени клонове, като на пример представителите на някои марки автомобили и техните салони и др. Причината за това е, че цената на наета линия на по-голямо разстояние е по-скъпо от цената за постоянна връзка с Интернет.

Третият най-чест случай е когато индивидуални потребители имат нужда от свързване към частната мрежа на фирмата, в която работят. Това могат да бъдат служители в фирмата, които трябва да се свържат към локалната мрежа на фирмата докато извършват някакви измервания извън офисите, служител който иска да се подготви за изненадващо заседание на следващия ден или търговски пътник, който представя ежедневни отчети за продажби и поръчки за следващия ден, и.т.н.

Освен данни чрез VPN е възможно и предаване на глас – VoIP ( Voice over IP ), което позволява значително спестяване, особено ако фирмата има клонове в повече държави. В зависимост от нуждите понякога е по-добре да се използват някои други, по-прости за имплементация начини за сигурна комуникация вместо VPN.

Глава I. Основни понятия


    1. Основи

Основната идея на VPN технологията е да осигури сигурно(защитено) свързване на частни мрежи чрез явна мрежа т.е. Интернет. Това най-често се извършва с тунелиране между две точки. При тунелирането може да се приложи компресия и/или кодиране на данните. Също така е възможно VPN да се използва и вътре в локалните мрежи, но това рядко се използва.

Реализацията може да бъде софтуерна или хардуерна, а често се използва комбинация от двете. При софтуерната реализация, скоростта е достатъчно бърза за кодиране/декодиране до 10Mbps данни в реално време, а за по-големи скорости се използва хардуерна реализация.

Потребителите искат защитена и постоянна свързаност във вътрешната мрежа. VPN може да осигури кодирането на данните и сигурността при тяхното предаване, но неможе да гарантира за постоянната връзка. Скоростта на връзката е еднаква на най-слабата и точка. Ако потребителят е свързан чрез модем, никой не може да гарантира стабилност на връзката. Тя може да бъде лоша към ISP-то или едноставно може да е голям трафика на Интернет. Това са предимствата на скъпите наети линии, които по правило осигуряват надеждна среда за трансфер на данни.


    1. Изисквания

VPN технологията трябва да осигури специфични изисквания. Това са:

  • Управление с адресите – VPN трябва да разпредели адресите на клиентите в частната мрежа;



  • Механизми за управление на ключовете - VPN трябва да осигури генериране и актуализиране на ключовете помежду клиентите и сървъра;

  • Поддръжка на различни протоколи – Трябва да поддържа стандартните протоколи използващи се в явните мрежи ( IP, IPX и др.).

Също така много важни са и изискванията относно сигурността:

  • Права на достъп – VPN осигурява проверка на самоличността на потребителя и позволява достъп само на регистрирани потребители. Също така трябва да осигури и мониторинг на събитията;

  • Автентикация - VPN трябва да гарантира че данните които се приемат, наистина идват от местоназначението за което твърдят и че клиента който твърди че изпраща е наистина той. За това често се използват дигитални сертификати. (Често автентикацията се отнася само за проверка на името на клиента и паролата)

  • Целостта (integrity) на данните – VPN трябва да осигури, че никой не променя данните докато пътуват чрез Интернет. За това най-често се използва MD5;

  • Криптиране – VPN трябва да осигури кодиране на данните така че никой, освен клиента или сървъра, няма да може да прочете данните. Това се постига с помощта на различни алгоритми като DES, 3DES, RSA, Diffie-Hellman.



    1. Видове VPN решения

По отношение на възможността на прилагане съществуват три решения:

  • Интранет VPN

Използва се за свързване на повече локации в рамките на една организация. За трансфер на данните се използва Интернет или WAN.

  • Екстранет VPN

Използва се за свързване на два или повече доставчици и/или бизнес партньори. За пренос на данните се използва Интернет или WAN.

  • Отдалечен достъп

Свързване на отдалечени потребители (или по-малки офиси) с локалната мрежа на фирмата. Връзката се осъществява чрез модем посредством Интернет (понякога се нарича VPDN = Virtual Private Dial Network).

Предимствата на този начин на свързване към директното свързване с модем с главния офис:



  • По-ниска цена на свързване чрез Интернет

  • С използването на ADSL технологията при нас е невъзможно свързването на два потребителя помежду им, но е възможно свързването им на Интернет.

Раздяла на VPN решенията в зависимост от конфигурациите:

  • “client-to-server” (или “client-to-gateway”) решения.

Използва се при решения с модем. Най-чест случай за това е когато служител на фирмата иска да се свърже към мрежовата инфраструктура на фирмата чрез ISP извън офиса.

  • “server-to-server” (или “gateway-to-gateway”) решения.

Използва се при свързване на две или повече отделни локални мрежи. Най-чест пример за това е фирма, която иска да се свърже със своите клонове, които са физически отдалечени.

    1. Тунелиране

Тунелиране представлява техника на трансфер на данни предназначени за една мрежа чрез използването на друга мрежа. Данните които се изпращат могат да бъдат рамки (или пакети) от някой друг протокол. Протоколът, изпълняващ тунелиране, капсулира данните така, че хедърите на оригиналния протокол се обвиват вътре в капсулиращите хедъри. Капсулираните данни се изпращат между крайните точки чрез тунел. Тунел е логически път чрез който капсулираните данни минават чрез мрежа, която служи като среда за трансфер. Когато пакетът пристигне до своето местоназначение, данните се екстрахират и след това се изпращат до целта. Тунелирането включва целия процес (капсулация, трансфер, декапсулация).

VPN може да се раздели и в зависимост от вида на тунелиране който използват:



  • Постоянни – не се предпочитат от причини че има постоянно определен поток от данни, дори когато няма трансфер на данни, а Интернет доставчиците често ограничават месечния обем на трансфер на данни, което означава че временните VPN имат предимство;

  • Временни – установяват се когато клиент поиска свързване във VPN и се прекъсват когато връзката свършва.

Ако VPN се установи чрез Интернет доставчик възможни са две решения:

  • Доброволно тунелиране (Voluntary Tunneling)

Това е случай когато компютър или рутер използва клиентски софтуер за тунелиране за установяване на VPN. Най-чест пример за това е когато Интернет потребител първо установява връзка със своя Интернет доставчик за след това да установи тунелиране чрез Интернет.

  • Задължително тунелиране (Compulsory Tunneling)

Голям брой на сървъри с входове от модем които използват Интернет доставчици, имат вградена възможност за автоматично създаване на тунел за потребители с модем. Този сървър или мрежово устройство, което дава възможност за тунелиране на потребителския компютър се нарича Front End Processor (FEP) при PPTP, L2TC Access Concentrator (LAC) при L2TP или IPSecurity Gateway при IPSec.

Днес съществуват различни технологии които позволяват тунелиране. Най-известни са:



  • PPTP (Point-to-Point Tunneling Protocol)

  • L2F (Layer 2 Forwarding)

  • L2TP (Layer 2 Tunneling Protocol)

  • IPSec (Internet Protocol Security Tunnel Mode)

  • Mobile IP – за мобилни потребители

  • GRE (Generic Routing Encapsulation)

  • ATMP (Ascend Tunnel Management Protocol)

  • DSLW (Data Link Switching)



    1. Мрежови модели

За да разберем по-добре някои разлики между различните имплементации на VPN трябва да разберем мрежовите модели. OSI моделът (Open System Interconnection Reference Model) е комуникационен модел за компютърни мрежи стандартизиран 1983 година от ISO. Моделът се състои от седем слоя, всеки от които представлява една стъпка в процеса на мрежовите комуникации:

  1. Физически слой (най-ниския) – Място където данните и хедърите, добавени от другите по-горни слоеве, биват транслирани в сигнали. Всички 0-ли и 1-ци в електрически импулси или светлинни импулси;

  2. Канален слой – Контролира преноса на битове на протокола от горния слой (ULP) по преносната среда. Данните от ULP се поставят в транспортна рамка и след това се пренасят;

  3. Мрежов слой – Предоставя услугите за доставка и адресиране, необходими за транспортирането на данните от хост до хост. Тук информацията се поставя в пакети съдържащи освен полезната и допълнителна информация необходима за транспортирането на пакета;

  4. Транспортен слой – Обслужва транспортирането на информацията. Може да стане с физическа връзка или по датаграмен метод;

  5. Сесиен слой - Обслужва обмена на данни между различните процеси. Проверява целостта на информацията и уведомява приложението за процесите на комуникацията;

  6. Представителен слой – Начин на представяне на информацията на потребителя;

  7. Приложен слой - Всички приложни програми се включват в него, дори и тези които нямат нищо общо с комуникациите. Всяко приложение трябва да използва собствен протокол за връзка с протоколите от по-ниския слой Lower-Layer Protocols (LLPs). Тук се осъществява връзката между приложението и потребителя.

Първите четири слоя осигуряват надеждно предаване на данни, а останалите три са предназначени за свързване и хармонично сътрудничество с процесите на приложенията.

IPS (Internet Protocol Suite) е по-известния комуникационен модел от OSI модела. Състои се от четири слоя. Първия слой на IPS обхваща първия и втория слой от OSI, а IPS слой четири обхваща петия, шестия и седмия слой от OSI. Слоевете втори и трети са същи с OSI слоевете 3 и 4.

От първите четири технологии предназначени като VPN решения, три работят на втория слой (PPTP, L2F и L2TP), докато IPSec работи на 3-тия слой.


    1. Основи на криптографията

      1. Ключове

Симетрични ключове (Symmetric, Secret или Private Key)

Предимства:



  • Много бързи;

  • Може лесно да се имплементират в хардуер.

Недостатъци:

  • Използват се два същи ключа;

  • Не са едноставни за разпространение.

Асиметрични ключове (Asymmetric или Public key)

Предимства:



  • Използват се два различни ключа;

  • Едноставно разпространение;

  • Използва се цифров подпис за да се гарантира цялост.

Недостатъци:

  • Бавни.



      1. Най-честите алгоритми

DES (Data Encryption Standard)

  • Използва 56 бита ключ върху 64-битови блокове от данни

  • Има случаи на пробиване в продължение от няколко дни

  • Симетричен алгоритъм

  • Относително бърз алгоритъм

3DES

  • Блок с данни се шифрира 3 пъти, всеки път с различен ключ

  • Симетричен алгоритъм

RSA (Rivest, Shamir i Adalman)



  • Най-честия ключ е 512-битов ( може да бъде пробит, но 1024-битовия все още не)

  • Асиметричен алгоритъм

  • Бавен алгоритъм

  • Ключът може да бъде с различна дължина

IDEA

  • Използва се 128-битови ключове за шифриране на блокове с дължина 64-бита

  • Алгоритъмът е двойно по-бърз от DES шифрирането

  • Симетричен алгоритъм

  • Предлага добра сигурност на шифрираното

RC2 и RC4



  • Разработен от Ron Rivest от RSA Data Security Inc.

  • По-бърз от DES алгоритъма

  • Ключ с променлива дължина

Skipjack

  • Предложено от Американското правителство.

  • Имплементиран в Clipper chip

  • Използва 80-битови ключове за шифриране на блокове с дължина 64-бита

Diffie-Hellman

  • Най-старият асиметричен алгоритъм, но все още в употреба

  • Позволява договарянето на сесиен ключ без изпращането му по несигурна връзка.

  • Опасността е да се появи хакер в средата

MD5

  • Това е функция при която от текст с произволна дължина произлиза 128-битови извлечения(hash).

  • Общо взето вероятността да два различни текста имат същи извлечения е много малка

SHA

  • Като MD5 само че произлиза 160-битови извлечения.

Сравняване на ключовете за защита, в зависимост от алгоритъма:

Симетрични

Асиметрични

56-битови

384-битови

64-битови

512-битови

80-битови

768-битови

112-битови

1792-битови

128-битови

2304-битови


Глава II. VPN Технологии

    1. IPSec

IPSec е предназначен да осигури IP връзки между устройства. Той е единствения стандартизиран протокол, който отговаря на всички изисквания към виртуалните частни мрежи.

Реализацията на VPN на трети (мрежов) слой според модела на ISO става именно с помощта на протокола IPSec. Целта е да осигури стандартни криптографски механизми за сигурност между IPv4 и IPv6 обекти. Между основните услуги са контрол на достъпа, гарантиране на целостта на данните (integrity) по пътя им от източника до местоназначението, както и удостоверяване на произхода им, разпознаване и отхвърляне на подвеждащи атаки (replays), поверителност (чрез криптиране) и мерки за поверителност на потоците от трафик. Всички тези услуги се предоставят на ниво IP.

IPSec е утвърден стандарт за сигурност на протокола IP, разработен за негова защита. IP (Internet Protocol) протокола не предоставя такива защитни възможности. IPSec добавя допълнителни услуги, липсващи в IP, които предоставят следващите възможности:


  • Криптиране на трафика;

  • Цялост на данните;

  • Удостоверяване между участващите страни.

Тези услуги се осъществяват чрез трите протокола, от които се състои IPSec:

  • AH (Authentication Header) – предоставя удостоверяване на IP пакетите;

  • ESP (Encapsulating Security Payload) – предоставя криптиране и удостоверяване на IP пакетите.

  • IKE (Internet Key Exchange) – договаря параметрите на връзката, включително ключовете.

IPSec е проектиран да работи, както в тунелен режим (за защита на комуникацията между отделни мрежи), така и в транспортен режим ( за защита на комуникациите между два участника), поради което се използва за изграждане на виртуални частни мрежи.

Транспортен режим на работа

При транспортния режим на работа, се шифрира дял от IP пакетът с данни, докато заглавието остава в оригиналния облик. Това означава че потенциалния хакер може да види адреса на компютъра от който пакетите идват, а също и адреса на компютъра за когото са предназначени пакетите. Предимството на този начин на работа е че на всеки пакет се добавят само няколко октета. Този начин на работа е предназначен при комуникация директно между два компютъра (със собствени IP адреси), което означава че по този начин не могат да комуникират два компютъра, които са свързани към Интернет чрез рутери или подобни устройства.


Адрес на изпращач

Адрес на получател

Шифрирани данни


Тунелен режим на работа

IPSec тунелиране се състои от клиент и сървър и са конфигурирани да използват IPSec тунелиране и имат договорени механизми за кодиране. При IPSec тунелиране, целия IP пакет се кодира (адреса на изпращача, адреса на получателя и данните), и на такъв пакет се добавя не кодирано заглавие с адресите на IPSec сървъра и IPSec клиента. Тези адреси са всъщност началото и края на тунела. За разлика от транспортния режим на работа, при тунелен режим потенциалния хакер може да открие от кои адреси се изпращат данните и къде трябва да пристигнат. Този начин на работа, поради допълнителните заглавия, изисква по-голяма пропускателна способност на мрежата чрез която се пренасят данните.


Адрес на края на тунела

Адрес на начало на тунела

Шифриран адрес на Испращач

Шифриран адрес на получател

Шифрирани данни

Трябвало е доста време за да се реши кой метод ще се използва за автоматично управление с ключовете. На края е избран ISA KMP/Oakley методът, за който днес се мисли когато се говори за IKE (Internet Key Exchange). Управлението с ключовете може да се извършва по два начина: ръчно или IKE (за автоматично управление). Ръчното управление е практично за малки фирми, докато IKE се прилага при свързване на голям брой мрежи или когато има повече потребители.



    1. PPTP

Протоколът PPTP (Point-to-Point Tuneling Protocol) е разработка на няколко производители: Microsoft, 3Com, Ascend Communications, ECI Telematics. Също като L2F и L2TP, работи на втория слой.

PPTP се основава на PPP (point-to-point protocol) който позволява автентикация, кодиране и компресия на данните. PPTP използва механизми за автентикация, които се използват в PPP, а това са PAP (password authentication protocol) и CHAP. Microsoft разви подобрена версия на CHAP наречена MS-CHAP, която за автентикация използва данните за потребителите съхранени в базата на потребители във Windows. От причини, че в MS-CHAP са намерени недостатъци в защитата, е представен MS-CHAP v2.

В началото PPTP е замислен като механизъм, който позволява и трансфер на протоколи които не са базирани на IP, като IPX, NetBEUI и AppleTalk чрез Интернет. Това се извършва с модифицирана версия на GRE протокола. PPTP използва TCP възел за поддръжка на тунела и модифицирана версия на GRE за декапсулация на PPP рамката за тунелиране на данните.

Частта на данните от капсулираните PPP рамки може да бъде кодирана и/или компресирана.



Структурата на PPTP пакетът.

Кодирано/Компресирано




IP хедър


GRE хедър

PPP хедър

PPP тяло

(IP пакет, IPX пакет , NetBEUI рамка )






PPP рамка

След като пакетът пристигне до своето местоназначение, външните заглавия (хедъри) се отстраняват което позволява на оригиналните пакети да пристигнат до крайната цел.

Microsoft RAS (Remote Access Server) е проектиран да управлява с данните за потребителите поставени в базата на потребителите. В началото RAS се използва като сървър, който определя правата на потребителите с модеми. Днес RAS поддържа и тунелиране за PPTP и L2TP връзки.

Microsoft в собствената версия на PPTP имплементира собствен начин на кодиране и компресия. Нарича се MPPE (Microsoft Point-to-Point Encryption) и е опционален. Основава се на RSA/RC4 алгоритъма.

Дължината на ключа може да бъде 40, 56 и 128-битова. Целият процес на криптиране е отслабен с използването на потребителски пароли за генериране на сесиен ключ.

Защитни проблеми

PPTP е често деклариран за несигурен от следните причини:


  • Ключовете не се генерират по случаен начин

  • Сесийните ключове не са адекватни

  • Дължината на ключовете е кратки и не е възможно тяхното конфигуриране

  • Несигурен при пренос на извлечения на потребителските пароли

  • Проблеми в сигурността със статични пароли в Windows OS.

  • Удостоверяването не е поддържано



    1. L2F

L2F (Layer 2 Forwarding Protocol) както и PPTP, се появи в самото начало на VPN. Също така е предназначен за тунелиране между потребители и техните фирми. Тази технология е представена от CISCO.

За разлика от PPTP, който пътува само чрез IP, L2F не зависи от преносния протокол, което дава възможност данните да пътуват чрез, на пример, Frame Relay или ATM (Asynchronous Transfer Mode). Основната функция на L2F протокола е осъществяване на тунела за рамките на транспортния слой или протоколи от по-високите слоеве. Декапсулираните пакети се пренасят чрез WAN точките до L2F сървъра (рутера), който след това ги изпраща в мрежата.

Използват се две нива за удостоверяване на потребителя. Първо потребителят се логва към Интернет доставчика (ISP), който след това осъществява тунел до фирмата, а след това потребителят се логва към сървъра на фирмата. Както и PPTP, L2F използва PPP за удостоверяване на потребителя и дава възможност за използването на TACACS (terminal access controller access control system) или RADIUS за удостоверяване.

L2F не дефинира потребителите и действа само в задължително дефинирани тунели. Комбинирането на възможностите на PPTP и L2F създава L2TP.



    1. L2TP

Както и самото име казва L2TP (Layer 2 Tunneling Protocol) функционира в каналния (Data Link) слой на OSI модела и представлява протокол за тунелиране на мрежовия трафик между две точки чрез съществуваща мрежа (Интернет). Разработен е от Microsoft и CISCO като комбинация от PPTP и L2F протоколи. В най-общ случай той пренася PPP сесия в L2TP тунел, подобно на PPTP. След създаване на тунела мрежовия трафик между двете точки е двупосочен. L2TP по IP интермрежи използва UDP и серия от L2TP-съобщения за управление на тунела. L2TP използва UDP, за да изпрати L2TP-капсулирания PPP пакет като тунелирани данни. Данните на капсулирания PPP пакет могат да бъдат криптирани и/или компресирани, въпреки че реализацията на Microsoft на L2TP не използва MPPE за криптиране на PPP данни.

L2TP само по себе си не осигурява поверителност или удостоверяване и затова най-често се използва с IPSec, който предоставя поверителност, удостоверяване и интегритет. Комбинацията между двата протокола се нарича L2TP/IPSec.

L2TP предлага някои предимства в сравнение с PPTP, като на пример: L2TP има възможност да поддържа множество тунели между крайни точки; поддържа компресиране на хедъри, което спестява допълнителната информация; има възможност за тунелно удостоверяване и може да работи по мрежи, различни от IP, използващи ATM или Frame Relay виртуални вериги.

L2TP/IPSec се нуждае от сертификационна инфраструктура, за да прилага компютърни сертификати или споделени ключове. Поддържа се в Windows Server 2003, Windows XP, Windows 2000 и други L2TP клиенти, работещи с Microsoft L2TP/IPSec VPN Client.





Сподели с приятели:
  1   2   3   4




©obuch.info 2024
отнасят до администрацията

    Начална страница