Курс по сетевым технологиям
A A A

Общий обзор 

Представим, что имеются головной офис, который находится в  Берлине и сотрудник, который, который по служебным делам находится в Москве. В процессе работы ему необходим доступ к внутренним ресурсам сети (серверы, корпоративный чат, приложения и т.д.), которые недоступны “не родным пользователям” данной сети.

 

Как же быть в такой ситуации? 

Можно, конечно, “вынести” серверы  в зону DMZ и предоставлять доступ по паролю, но это решает всех задач.

Однако есть другое решение. Достаточно просто идентифицировать пользователя как “своего” и предоставить ему полный доступ во внутреннюю сеть, причем пользователь может иметь IP адрес из диапазона родной сети, хотя это не является обязательным. 

Вроде бы все просто - ввел логин и пароль и работай. Но проблема заключается в том, что логин с паролем могут перехватить и преспокойно подключиться к сеансу связи и ко всей корпоративной сети. 

Так вот, чтобы этого не произошло весь канал связи шифруется, а удаленные пользователи проходят сложную процедуру идентификации, чтобы наверняка знать кто подключается к сети. Таким образом создается логический виртуальный канал или туннель, который надежно защищен:

Схема VPN

То есть все участники связи физически подключены к интернету и разным подсетям, но логически находятся в одной сети, которая и называется Виртуальная Частная Сеть (Virtual Private Network, VPN).

 

Основными принципами VPN являются:

  • Аутентификация участников (маршрутизаторов, компьютеров)
  • Шифрование данных
  • Обеспечение и контроль целостности передаваемых данных (то есть пакеты не были модифицированы перехватывающей стороной)
  • Периодическая смена всех криптографических ключей

 

А как осуществляется контроль целостности передаваемых данных?

Для этого используется хэширование неизменяемых полей пакета. Затем этот хэш добавляется в заголовок. Принимающая сторона тоже вычисляет хэш и сравнивает его с принятым. Если в пакете был изменен хотя бы один бит, то вычисленный хэш будет кардинально отличаться от переданного в заголовке.



Типы VPN

Существует несколько типов VPN: 

Intranet - удаленные филиалы подключены к головному офису и используют ресурсы его сети. Причем абсолютно все пользователи могут обмениваться данными друг с другом вне зависимости от географического нахождения. Туннель устанавливается между пограничными маршрутизаторами сетей.

 

Extranet - к корпоративной сети компании  могут также подключаться и ее партнеры (например, поставщики, клиенты) и получая возможность пользоваться общими ресурсами. Причем степень доступа регулируется политикой безопасности. Туннель устанавливается между пограничными маршрутизаторами сетей.

 

Коммутируемые - сотрудники компании могут подключиться к головному офису с любой точки Земли с помощью своего ноутбука. В компьютере пользователя устанавливается специальная программа для создания VPN либо используются встроенные функции самой операционной системы. Туннель создается от самого ноутбука до пограничного маршрутизатора корпоративной сети.



Принцип работы VPN

Принцип работы заключается в следующем.Отправитель шифрует исходный IP пакет (ничего не меняя в самом пакете) заранее согласованным алгоритмом шифрования. Затем добавляет дополнительную информацию в виде заголовков. После этого данный пакет инкапсулируется в новый IP пакет с новыми IP адресами. 

Получатель совершает обратную процедуру. Извлекает зашифрованный пакет с VPN заголовком. Затем удаляет сам VPN заголовок и дешифрует исходный пакет.  После этого пакет отправляется во внутреннюю сеть:

Принцип работы VPN

Вот как выглядит инкапсулируемый пакет:

Инкапсуляция VPN

На сегодняшний день существует множество протоколов и стандартов для создания  VPN. К ним относят: 

  • GRE  - Generic Routing Encapsulation
  • IPsec - IP Security
  • Easy Cisco VPN
  • Web VPN
  • L2/L3 VPN

 

Наиболее популярными являются GRE и IPSec. Мы рассмотрим процесс создания и настройки туннеля на основе технологии IPSec в одном из следующих уроков.