Опубликован: 28.11.2014 | Уровень: для всех | Доступ: свободно | ВУЗ: Московский государственный университет имени М.В.Ломоносова
Лекция 5:

Технологии тунеллирования

Виртуальные частные сети

Virtual Private Network (VPN) – это различные технологии, которые позволяют создавать логические сети, использующие в качестве транспорта другие сетевые протоколы. При этом характеристики безопасности созданной логической сети могут отличаться от характеристик безопасности сети, которая используется в качестве транспорта. Такие сети могут создаваться на разных уровнях стека OSI исходной транспортной сети. Создаваемая логическая сеть не обязательно должна быть маршрутизируемой, она может обеспечивать соединение типа точка-точка.

VPN используются в двух основных сценариях:

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

При создании VPN всегда следует помнить, что безопасность компьютерной системы и сетевого трафика зависит от многих факторов. Развертывание VPN с использованием той или иной технологии является только частью комплексного подхода к обеспечению безопасности.

Безопасность, обеспечиваемая VPN, зависит от многих параметров операционного окружения, в котором VPN выполняется. Например, от безопасности ОС, источника случайных чисел, способов управления системой и т.д.

Рассмотрим основные протоколы создания VPN и проанализируем их характеристики с точки зрения безопасности создаваемых соединений, возможностей масштабирования и наличия каких-либо дополнительных возможностей.

Таблица 5.1


Протоколы канального уровня

Терминология

Протокол РРР определяет механизм инкапсуляции для пересылки пакетов, принадлежащих любым сетевым протоколам, по каналам точка-точка 2 уровня. Обычно пользователь получает соединение канального уровня (так называемое L2-соединение) к Network Access Server (NAS), используя одну из технологий доступа типа точка-точка: dial-up POTS, ISDN, ADSL и т.п. Протокол РРР выполняется поверх данного соединения. В простейшем случае завершение L2-соединения и конечная точка РРР-протокола расположены на одном и том же физическом устройстве NAS.

L2TP расширяет возможности РРР, допуская, чтобы конечные точки L2 и РРР были расположены на разных устройствах, соединенных между собой сетью, по которой могут передаваться пакеты. При использовании L2TP пользователь создает L2-соединение с концентратором (например, модемом, ADSL DSLAM и т.п.), затем концентратор туннелирует отдельные РРР-кадры к NAS. Это позволяет обрабатывать РРР-кадры отдельно от точки завершения L2-соединения.

Одно очевидное преимущество такого разделения состоит в том, что вместо требования завершения L2-соединения на NAS (что может требовать тянуть провода на большие расстояния), соединение может заканчиваться на локальном концентраторе, который создает логическую РРР-сессию поверх разделяемой инфраструктуры такой, как frame relay или интернет. С точки зрения пользователя не существует различия между завершением L2 непосредственно на NAS или использованием L2TP.

Протокол L2TP определяет создание туннелей между двумя узлами и последующую инкапсуляцию туннелируемых РРР сессий.

В протоколах, выполняющих пересылку РРР-данных по сети Ethernet, используется следующая терминология.

Таблица 5.2.
L2TP концентратор доступа (L2TP Access Concentrator - LAC) Узел, который является одной из конечных точек L2TP-туннеля. LAC является противоположной сто-роной L2TP сетевого сервера (LNS). LAC расположен между LNS и удаленной системой и перенаправляет пакеты к каждой из них. Пакеты, посылаемые от LAC к LNS, туннелируются по протоколу L2TP. Соедине-ние между LAC и удаленной системой является либо локальным, либо выполняется по протоколу РРР. Если вместо L2TP используется протокол РРТР, то аналогичный узел называется РРТР концентратор доступа – РАС.
L2TP сетевой сервер (L2TP Network Server - LNS) Узел, который является одной из конечных точек L2TP-туннеля. LNS является противоположной стороной LAC. LNS является логической конечной точкой РРР-сессии, которая туннелируется от удаленной системы с помощью LAC. LNS также является конечной точкой туннеля между LNS и LAC. Если вместо L2TP используется протокол РРТР, то аналогичный узел называется РРТР сетевой сервер – PNS.
Сервер сетевого доступа (NAS) Устройство, предоставляющее пользователям сетевой доступ по требованию. Этот доступ является доступом типа точка-точка, использующим PSTN или ISDN каналы. Функции NAS может выполнять и LAC, и LNS.
L2TP/PPTP-туннель Туннель между LAC и LNS. Туннель состоит из управляющего соединения и нуля или более L2TP-сессий. L2TP/PPTP-туннель передает инкапсулированные дейтограммы PPP и управляющие сообщения между LAC и LNS.
L2TP/PPTP-сессия В протоколах РРТР и L2TP определено понятие сес-сии. LNS и LAC поддерживают состояние для каждого вызова, который инициирован LAC или на который ответил LAC. L2TP-сессия создается между LAC и LNS, когда РРР-соединение установлено между удаленной системой и LNS. Дейтаграммы, относящиеся к РРР-соединению, посылаются по туннелю между LAC и LNS. Между установленными сессиями и соответствующими вызовами существует взаимнооднозначное соответствие.
Управляющее соединение L2TP/PPTP Управляющее соединение используется для установ-ление и поддержки как для сессий, так и самого L2TP/PPTP-туннеля и создается для каждой пары LАС, LNS. Управляющее соединение определяет все характеристики туннеля и связанных с ним сессий.
Point-to-Point Protocol (PPP)

Обзор

Протокол РРР предназначен для создания не маршрутизируемых каналов, по которым передаются пакеты между двумя участниками. Каналы являются полнодуплексными и функционируют в обоих направлениях.

Протокол обеспечивает инкапсуляцию различных протоколов сетевого уровня в один канал.

Протокол РРР определяет способ передачи дейтаграмм по последова-тельным каналам. Протокол РРР состоит из следующих протоколов:

  1. Протокол управления каналом (Link Control Protocol – LCP) для установления, конфигурирования и тестирования последовательного соединения.
  2. Семейство протоколов управления сетью (Network Control Protocol – NCP) для установления и конфигурирования различных протоколов сетевого уровня.

Для согласования параметров канала используется протокол управления каналом LCP. Протокол LCP может также выполнять аутентификацию конечных точек канала.

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

Конфигурирование выполняется с помощью переговоров об используемом наборе опций. Для этого каждая сторона канала описывает противоположной стороне свои возможности и требования.

Для того, чтобы установить соединение точка-точка, каждый конец РРР-канала должен во-первых послать LCP-пакеты для конфигурирования и тестирования канала данных. После того, как канал установлен и выпол-нены переговоры о дополнительных опциях, которые необходимы LCP, РРР должен послать NCP-пакеты для выбора и конфигурирования прото-колов сетевого уровня. После того, как протокол сетевого уровня сконфигурирован, по каналу могут посылаться дейтаграммы.

Канал будет оставаться открытым до тех пор, пока явно не будет закрыт LCP- или NCP-пакетами, или пока не произойдет какое-нибудь внешнее событие.

Диаграмма состояний

В течение своего жизненного цикла РРР-канал проходит через следующие состояния.

Диаграмма состояний РРР-канала

Рис. 5.3. Диаграмма состояний РРР-канала

Установление канала

Для установления соединения используется LCP-протокол, в котором выполняется обмен конфигурационными пакетами. Инициализация канала выполняется с помощью пакета Configure-Request, на который получатель отвечает Configure-Ack. Инициализация канала завершается, и состояние LCP становится открытым после того, как пакет Configure-Ack отправлен и получен.

Протоколом LCP конфигурируются только те опции, которые не зависят от конкретных протоколов сетевого уровня. Конфигурированием протоколов сетевого уровня занимается отдельные протоколы управления сетью (NCP).

Любые не-LCP-пакеты, полученные в этом состоянии, отбрасываются.

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

Пример LCP-запроса

Рис. 5.4. Пример LCP-запроса
Пример запроса на аутентификацию

Рис. 5.5. Пример запроса на аутентификацию

Аутентификация

В некоторых случаях перед обменом пакетами протокола сетевого уровня может требоваться аутентификация противоположной стороны.

Аутентификация должна иметь место сразу же после установления канала.

Переход из состояния аутентификации в состояние пересылки дейтаграмм сетевого уровня не происходит до тех пор, пока аутентификация не завершиться.

СНАР- аутентификация в протоколе РРР

Рис. 5.6. СНАР- аутентификация в протоколе РРР