Виртуальные частные сети: администраторы требуют гарантий

Часть I

 

Олифер Виктор и Олифер Наталья

 

Под термином «виртуальные частные сети» (virtual private networks, VPN) понимают достаточно широкий круг технологий, обеспечивающих безопасную и качественную связь в пределах контролируемой группы пользователей по открытой (публичной) глобальной сети.  Термин «виртуальная частная сеть» используется также для обозначения устойчивых информационных потоков одного предприятия, которые существуют в публичной сети с коммутацией пакетов и которые в достаточной степени защищены от влияния потоков данных других пользователей этой публичной сети.

VPN можно применять для решения трех разных задач:

·       для организации глобальной связи между филиалами одной компании (intranet)

·       для соединения частной сети компании с ее деловыми партнерами и клиентами (extranet)

·       для взаимодействия отдельных мобильных пользователей или работающих дома сотрудников с корпоративной сетью (удаленный доступ).

В качестве  среды для создания виртуальных частных сетей могут выступать сети frame relay, ATM, но наиболее популярны технологии VPN, рассчитанныерасчитанные на использование в среде  Internet или какой-либо общедоступной IP-сети. Именно поэтому в данной статье  основное внимание будет уделено проблемам построения виртуальных частных сетей в Internet и IP-сетях отдельных провайдеров и.

«Истинная» частная сеть

Как следует из названия, виртуальная частная сеть может рассматриваться как некоторая имитация «истинной» частной сети. Что же такое «истинная» частная сеть и какие ее  свойства  являются определяющими?

Термин «private» имеет два основных значения: частный (собственный) и конфиденциальный (закрытый). Если делать акцент на первом значении, то частная сеть — это такая сеть, в которой все оборудование (включая территориальные кабельные системы, коммутирующие устройства, средства управления и т.п.) являются собственностью предприятия. На рисунке VPN_1 приведен пример корпоративной сети, в которой связи между филиалами построены на основе собственного оборудования данного предприятия. Три территориальных канала связывают центральную локальную сеть предприятия с тремя локальными сетями удаленных филиалов. Каждый территориальный канал образован отрезками кабеля, проложенного между устройствами регенерации, которые нужны для усиления сигналов и восстановления их формы после прохождения определенного расстояния по пассивному кабелю. Вся пропускная способность территориальных каналов находится в полном распоряжении предприятия. 

Рис. VPN_1. Частная сеть с собственными территориальными каналами

Понятно, что сеть, построенная целиком на собственном оборудовании предприятия, соответствует и второму определению термина «private» — в собственной  сети в принципе  легче достигается конфиденциальность, поскольку все ресурсы сети используются только сотрудниками предприятия-владельца.

Частная сеть на арендованных каналах

Однако в мире существует немного корпоративных сетей, являющихся  частными в таком «идеальном» смысле. Гораздо чаще предприятия используют для связи своих филиалов частные сети, построенные на арендуемых территориальных каналах. Эти каналы прокладываются провайдером транспортных территориальных услуг в его первичной сети FDM, PDH, SDH или сети с интегральными услугами ISDN. При аренде канала в таких сетях предприятие делит пропускную способность магистральных каналов и коммутаторов этой сети с другими абонентами, которые также арендуют каналы у данного провайдера. На рисунке VPN_2 показан пример использования арендованных каналов для построения корпоративной сети уже рассмотренного нами предприятия с тремя филиалами. Каналы, связывающие центральную сеть предприятия с сетями филиалов, проходят через мультиплексор, который объединяет эти каналы, а также  каналы других абонентов в магистральный канал.

Рис. VPN_2 Частные сети на основе арендованных каналов

Несмотря на то, что территориальные каналы в этом случае уже не являются собственностью предприятия, корпоративные сети, построенные на арендованных каналах также называются частными, и у них имеются по крайней мере две причины для  того, чтобы именоваться таковыми. Во-первых, полоса пропускания арендованного канала полностью выделяется предприятию, и поэтому является в некотором смысле его «частной собственностью». Это в полной мере относится к арендуемым цифровым каналам, которые поддерживаются провайдером на базе первичной цифровой сети с техникой мультиплексирования TDM — арендатор такого канала получает в свое полное распоряжение всю пропускную способность такого канала — 64 Кбит/с, 128 Кбит/с, 2 Мбит/с или выше. В  устаревших сетях с частотным мультиплексированием FDM арендатор получает в свое распоряжение не пропускную способность, а заранее известную полосу пропускания канала. В любом случае, пропускную способность канала предприятие-арендатор не делит ни с кем, она полностью находится в его распоряжении, и это очень важно для создания корпоративной сети со стабильными характеристиками. Наличие гарантированной пропускной способности дает возможность администратору сети планировать работу приложений через глобальные каналы связи: распределять имеющуюся пропускную способность канала между приложениями, оценивать возможные задержки сообщений, ограничивать объем генерируемого территориального трафика, определять максимальное  количество активных приложений и т.д.

Во-вторых, частный характер сетей, построенных на арендованных каналах,  следует из того, что при передаче данных по таким каналам в значительной степени обеспечивается конфиденциальность. Корпоративные данные практически недоступны для других абонентов, не являющихся пользователями корпоративной сети или сотрудниками организации-провайдера каналов. Действительно, коммутацию каналов в первичных сетях может выполнить только оператор сети, пользователю сети такая операция недоступна. Это обуславливает большую степень защищенности данных, передаваемых по каналам первичных сетей. Например, здесь невозможна  типичная для Internet атака — ответвление  и анализ «чужого» трафика другим пользователем, что позволяет обеспечить приемлемую безопасность передаваемых данных без использования шифрования и взаимной аутентификации абонентов.

Открытые связи через публичную сеть

Возвращаясь к нашему примеру, рассмотрим еще одну схему организации связи локальных сетей этого предприятия. Пусть сети центрального офиса и каждого из филиалов имеют постоянное подключение к Internet (рис. VPN_3). Это дает пользователям корпоративной сети потенциальную возможность получать доступ к ресурсам любого узла Internet, например, к информации Web-узлов или архивов ftp. Так как локальные корпоративные сети являются продолжением Internet, то пользователи одного филиала предприятия получают возможность обращаться через Internet к ресурсам узлов других филиалов или центрального офиса.

Рис. VPN_3. Организация глобальных связей  филиалов предприятия через публичную сеть.

Построение корпоративной сети на базе общедоступных транспортных услуг Internet имеет по сравнению с построением  частной сети на выделенных каналах ряд очень привлекательных моментов. Прежде всего — это простота и доступность реализации. Для того, чтобы организовать связь всех филиалов предприятия, достаточно подключить их к Internet, что, как правило, гораздо проще оформления аренды выделенного канала, особенно если филиалы предприятия находятся на большом расстоянии друг от друга, например, в разных странах. Другим важным преимуществом является экономичность данного решения. Ежемесячная плата за арендуемые линии (а тем более затраты на создание и эксплуатации собственных каналов) может существенно превышать абонентскую плату за подключение к Internet. Гибкость — это еще одно привлекательное свойство использования Internet для передачи корпоративного трафика. В частных сетях появление каждого нового филиала или отдельного удаленного пользователя требует от предприятия прокладки или аренды нового территориального канала, а  в сетях, использующих транспорт Internet, подключение большого количества новых удаленных узлов осуществляетсяузловосуществляется достаточно легко. Кроме того,  при использовании Internet администратор корпоративной сети может гибко создавать резервные связи для автоматического перенаправления трафика в обход неисправных участков, заключая договоры на обслуживание с несколькими Internet-провайдерами.

Но наряду со столь очевидными выгодами обсуждаемое решение имеет столь же очевидный недостаток — использование общедоступного транспорта Internet  в корпоративных сетях не оставляет предприятиям никаких иллюзий частного владения территориальными каналами. Соединения через Internet - это соединения с неизвестной заранее пропускной способностью, так как пакеты одного предприятия обслуживаются в общих очередях маршрутизаторов провайдеров наряду с пакетами других предприятий по простому правилу «первым пришел - первым ушел». Пропускная способность соединения через Internet зависит от того, сколько в данный момент других пользователей посылает или получает информацию через те же каналы и маршрутизаторы, которые используются корпоративным соединением.

В публичных сетях с коммутацией пакетов, к которым относится и Internet, отсутствует и другой признак частной связи - конфиденциальность пересылаемых данных. В таких сетях к опасности перехвата данных, передаваемых по линиям связи, добавляется опасность несанкционированного входа в узлы сети. Поскольку Internet создавалась как открытая система, предназначенная для свободного обмена информацией, совсем не удивительно, что практически все протоколы стека TCP/IP имеют "врожденные" недостатки защиты.  Используя эти недостатки, злоумышленники все чаще предпринимают попытки несанкционированного доступа к информации,  хранящейся на узлах  Internet. Наличие огромного числа хакеров в Internet увеличивает вероятность попыток незаконного проникновения в корпоративную сеть. Все это представляет постоянную угрозу сетям, подсоединенным к Internet.

VPN как средство имитации частных сетей

Подведем некоторые итоги. С одной стороны, имеется заманчивая возможность использовать для создания корпоративной сети удобный, общедоступный, экономичный транспорт Internet. С другой стороны, существуют очень серьезные препятствия к этому, заключающиеся в гораздо более низком качестве транспортного обслуживания, не сравнимом с качеством обслуживания, предоставляемым выделенными каналами частных сетей, а также в отсутствии гарантий безопасности передаваемых данных. Разрешить это противоречие путем совмещения всех преимуществ использования публичных сервисов с преимуществами частной сети и призваны технологии, объединяемые названием VPN. Цель VPN-технологий состоит в максимальной степени обособления  потоков данных одного предприятия  от потоков данных всех других пользователей публичной сети. Обособленность должна быть обеспечена в отношении параметров пропускной способности потоков и в отношении конфиденциальности передаваемых данных. 

Таким образом, основными задачами технологий VPN являются  обеспечение в публичной сети гарантированного качества обслуживания для потоков пользовательских данных, а также защита их от возможного несанкционированного доступа или разрушения. При этом в качестве публичной сети может выступать не только Internet, но и сети ATM или frame relay, а также принадлежащие отдельным провайдерам IP-сети (которые иногда называют  частными, подчеркивая отношение собственности, в отношении же предоставляемых услуг такая сеть, естественно, является публичной).

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

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

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

Правда, построить полноценную виртуальную частную сеть только своими силами, без участия провайдера, невозможно. Все имеющиеся на рынке VPN-продукты обеспечивают решение только одной из двух необходимых для имитации частной сети задач, а именно,  выполняют защиту передаваемых данных. Никаких же способов поддержания заданного качества транспортного обслуживания эти продукты не предоставляют. Это обстоятельство, однако, не говорит о незрелости VPN-продуктов — просто эти продуктыподукты делают то, что можно сделать, и не делают того, что в принципе сделать невозможно. Действительно, поддержать требуемое качество обслуживания для отдельных потоков данных в сети провайдера  может только провайдер. Эта задача никак не может быть решена на клиентской стороне, и если провайдер не дает гарантий по обеспечению требуемого качества транспортного обслуживания, то нужно либо сменить провайдера, либо смириться с некоторой ущербностью своей VPN.

Поддержка гарантированного качества обслуживания — вещь достаточно сложная. Особенно она сложна для Internet, так как эта глобальная сеть состоит из магистралей множества провайдеров, которым очень трудно договориться о координации своих усилий для обеспечения сквозного качества обслуживания. Поэтому сегодня качество обслуживания и, соответственно, полноценные VPN могут быть созданы только в пределах той части Internet, которая поддерживается каким-либо одним провайдером, да и то таким, который предпринимает для этого определенные меры.

Соглашение о качестве обслуживания

Доступность и экономичность Internet примиряет некоторых корпоративных клиентов с неопределенностью параметров производительности соединений через Internet. Но большая часть администраторов корпоративных сетей все-таки хотела бы иметь определенные гарантии качества обслуживания, и формальным выражением этих гарантий является так называемое соглашение о уровне услуг — Service Level Agreement, SLA. Такое соглашение заключается между предприятием и провайдером публичной сети, услуги которой предприятие использует для построения своей виртуальной частной сети. 

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

Важность той или иной характеристики зависит от типа критических для предприятия приложений. Некоторые усредненные оценки дает исследование, выполненное компанией Infonetics Research (http://www.infonetics.com). В соответствии с ними корпоративные администраторы из всех характеристик качества обслуживания считают наиболее важными следующие:

·       100% доступность сетевой магистрали провайдера

·       высокую доступность сервера для удаленных пользователей

·       гарантированную пропускную способность соединений.

Кроме того, администраторам чрезвычайно важно, чтобы все эти характеристики обеспечивались «из конца в конец», то есть между двумя точками подключения корпоративной сети к публичной сети.

Провайдеры, учитывая потребности своих заказчиков, предлагают им некоторые типовые варианты соглашений. Например, компания AT&T предлагает своим абонентам следующий набор характеристик качества обслуживания при заключении договора по поддержанию VPN через собственную IP-сеть :

·       Сеть будет доступна на протяжении 99,9% времени, включая магистраль, абонентский канал и маршрутизатор доступа (если он берется в аренду у AT&T). При недоступности службы более 10 минут заказчик получает скидку в зависимости от длительности простоя.

·       Доля потерянных пакетов при их передаче по магистрали не превысит 1%.

·       Задержка передачи пакетов не будет превышать 80 мс (в среднем за месяц).

Другой известный провайдер Internet — UUNET  дает 100% гарантию на готовность своей магистрали, а также гарантирует, что задержка пакетов не будет превышать 85 мс в пределах Соединенных Штатов и 120 мс между Нью-Йорком и Лондоном (в среднем за месяц).  Очевидно, что эти гарантии распространяются только на тех абонентов, все точки подключения которых обслуживаются данным провайдером.

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

Основным приемом, с помощью которого провайдеры решают эти задачи, является постоянный мониторинг собственных сетей для статистического анализа работы сети. Замеры на реальной сети служат отправной точкой для количественных значений гарантируемых характеристик. Для выполнения мониторинга сети используются специальные средства тестирования, например, продукты компаний Inverse Network Technology, Micromuse, Paradyne, Sun Microsystems и Packeteer, позволяющие наблюдать за качеством обслуживания отдельных соединений в течение длительного времени.

Пользователи услуг VPN также должны иметь инструменты для контроля действительных параметров качества услуг, которые они получают от провайдера. Проведение таких работ требует больших усилий и покупки дорогостоящих измерительных систем, но многие провайдеры помогают своим клиентам, посылая им регулярно отчеты о работе своей сети. Некоторые  провайдеры идут дальше. Например, компания AT&T предоставляет для своих клиентов на Web-сайте ipnetwork.bgtmo.ip.att.net доступ к данным реального времени о состоянии конкретных соединений, задержках и проценте потерянных пакетов.

Понятно, что средства измерения могут только запротоколировать имеющуюся пропускную способность сети, а для удовлетворения постоянно растущих запросов своих клиентов провайдерам приходится много работать над повышением производительности магистральных каналов,  маршрутизаторов, коммутаторов и сетей доступа. Внедрение терабитных маршрутизаторов и гигабитных каналов SDH или DWDM позволяет провайдерам, в том числе и провайдерам такой децентрализованной сети как Internet, постоянно обеспечивать большой запас производительности сети по отношению к пользовательской нагрузке. Некоторые провайдеры вообще считают повышение производительности своих сетей основным способом, с помощью которого они могут обеспечить гарантированное качество обслуживания пользователей.

Борьба за привилегии

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

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

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

Еще более  тонкие процедуры поддержания параметров качества обслуживания предлагает технология ATM, которая может обеспечить те же параметры качества обслуживания, что и технология frame relay, а сверх того еще предоставить трафику реального времени гарантии по задержкам передаваемых ячеек.

А что же Internet может дать своим пользователям в части дифференцированного обслуживания? При установлении соединения через произвольную последовательность сетей различных провайдеров - пока ничего. И это очевидный ответ в такой ситуации, когда и недифференцированные гарантии качества обслуживания не даются. Но сеть Internet уже начала приспосабливаться к требованиям времени, и собирается в скором времени предложить своим абонентам такие же гарантии, которые сегодня являются обычными для пользователей сетей frame relay и ATM.

Несколько по другому обстоят дела в частных IP-сетях, где провайдер уже сейчас имеет в своем распоряжении набор средств для дифференцированного обслуживания своих абонентов. Эти средства основываются на классических свойствах протокола IP, новых протоколах стека TCP/IP, а также возможностях технологий, поверх которых работает составная сеть IP.

Приоритетное обслуживание

В повсеместно используемой сегодня версии протокола IPv4 предусматривается единственный механизм для организации дифференцированного обслуживания, который основан на поле типа сервиса (Type Of Service, TOS) в заголовке IP-пакета. Три бита этого поля позволяют задать 8 уровней приоритета пакета, а значит и разбить весь трафик, обрабатываемый маршрутизатороммаршрутизаторм, на 8 классов. Большинство современных маршрутизаторов позволяют администратору использовать приоритеты поля TOS для организации различных классов обслуживания. Хотя правила обслуживания этих классов могут быть различными, чаще всего на практике используется алгоритм так называемого «взвешенного справедливого обслуживания» (Weighted Fair Queuing, WFQ), когда из очереди каждого приоритета маршрутизатор периодически выбирает определенное число пакетов, соответствующее  весу данного приоритета в общем трафике.  Основной проблемой при использовании приоритетов пакетов является выработка согласованной политики настройки всех маршрутизаторов сети, которая в результате должна давать определенное качество обслуживания каждому классу трафика между конечными точками сети. Проще всего реализовать такую  политику одному провайдеру в пределах контролируемой части сети, что и происходит сегодня в частных IP-сетях многих провайдеров.

В ответ на потребности времени в рамках  IETF разрабатываются новые протоколы и механизмы поддержки качества обслуживания для IP-сетей. Эти работы ведутся как для текущей версии IPv4, так и для новой версии протокола IP - версии IPv6, которая постепенно должна вытеснить IPv4.

Механизм приоритетов поля TOS получил дальнейшее развитие в комплексе спецификаций  IETF дифференцированного обслуживания (Differentiated Services, DS). Эти спецификации расширяют поле приоритета в пакетах IPv4 и класса трафика в пакетах IPv6 до одного байта DS, в котором приоритет (класс трафика) задается уже 6-ю битами.

Резервирование полосы пропускания

Следует подчеркнуть, что в спецификациях DS термин «дифференцированное обслуживание» используется в узком смысле и противопоставляется  «интегрированному обслуживанию». При этом под дифференцированным обслуживанием понимается приоритетная обработка пакетов без резервирования полосы пропускания в маршрутизаторах сети, а под интегрированным обслуживанием - с резервированием. Одной из реализаций технологии интегрированного обслуживания в IP-сетях и Internet является протокол резервирования ресурсов RSVP (Resource reSerVation Protocol),  разработанный несколько лет назад, но все еще не нашедший широкого практического применения.

В соответствии с протоколом RSVP узел-источник, который собирается передавать данные, требующие определенного нестандартного качества обслуживания, например постоянной полосы пропускания для передачи видеоинформации, посылает по сети узлу назначения специальное RSVP-сообщение, называемое сообщением о пути - path. Это сообщение содержит метку потока - признак, размещаемый в заголовке пакета и указывающий принадлежность данного пакета потоку, для которого требуется обеспечить заданные параметры обслуживания, отличные от принятых по умолчанию. Кроме того, сообщение path содержит требования к пропускной способности для данного потока. При прохождении сообщения path через сеть в нем фиксируется последовательность маршрутизаторов, лежащих на пути от узла-отправителя до узла назначения. На основании полученной информации узел назначения, используя маршрутизацию от источника, отправляет ответное сообщение resv, с помощью которого он запрашивает у всех промежуточных маршрутизаторов определенную пропускную способность для данного потока.

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

При использовании протокола RSVP с целью резервирования пропускной способности для потоков VPN возникает одна проблема — конечному узлу разрешается выполнять весьма опасное с точки зрения провайдера действие: он получает возможность управлять пропускной способностью сети провайдера. Эта проблема может быть решена с помощью другого варианта применения протокола RSVP, когда маршрутизаторы при получении запроса от конечного узла проверяют сначала его допустимость. Для этого они обращаются к специальному серверу правил (policy server), находящемуся в сети провайдера. Если правила разрешают, например, данному пользователю в данный день недели и в данное время запрашивать определенный объем пропускной способности для данного приложения, то маршрутизатор принимает запрос, а если нет - то отвергает. Это позволяет сочетать механизм заказа пользователем нужной его приложению пропускной способности с контролем над этим процессом со стороны провайдера.

Интегрированное обслуживание может  быть организовано также с использованием сравнительно нового протокола MPLS (MultiProtocol Label Switching), который решает задачу резервирования  пропускной способности в связке с протоколом RSVP. Этот протокол, помимо поддержки качества обслуживания, преследует и другую цель — повышение производительности продвижения IP-пакетов через маршрутизаторы за счет использования техники коммутации на основе локальных меток, подобной той, которая используется в технологиях X.25, frame relay и АТМ. В основу MPLS положены технологии IP Switching компании Ipsilon и Tag Switching компании Cisco.  С помощью MPLS в IP-сети поддерживается виртуальный канал, а резервирование необходимой для него полосы пропускания выполняется с помощью протокола RSVP.

Управление потоками

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

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

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

Делегирование полномочий

И, наконец, IP-сеть может использовать те механизмы обеспечения качества обслуживания, которые имеются в транспортных технологиях нижнего уровня, над которыми работает протокол IP. У многих провайдеров IP-сети работают сегодня поверх сетей АТМ и frame relay. И было бы очень странно не использовать присущие этим сетям возможности по резервированию полосы пропускания и обеспечению других параметров качества обслуживания, а дублировать всю эту работу на IP-маршрутизаторах. Для этого достаточно иметь некоторый механизм отображения параметров качества обслуживания канала пользователя уровня IP на параметры качества обслуживания виртуального канала АТМ или frame relay.

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

Описанный набор технологий и механизмов гарантированного обслуживания (его, конечно, можно дополнять и расширять) позволяет провайдеру VPN-услуг уже сегодня удовлетворять запросы требовательных администраторов корпоративных сетей, нуждающихся в качественных и сравнительно недорогих глобальных связях. Конечно, при этом провайдер должен надежно защищать пользовательские данные при передаче их через публичную сеть. Именно этой проблеме посвящена вторая часть данной статьи.

Виртуальные частные сети: администраторы требуют гарантий

Часть II

Для того, чтобы виртуальные частные сети  могли использоваться как полноценный транспорт для передачи трафика корпоративных приложений через публичную сеть, администраторы сетей предприятия должны получить гарантии как на пропускную способность линий связи (об этом шла речь в части I данной статьи), так и на защищенность передаваемых данных. Многие специалисты именно с безопасностью данных прежде всего связывают термин «виртуальные частные сети».

От чего защищает VPN

При подключении корпоративной локальной сети к любой публичной сети существуют два типа угроз:

(1) несанкционированный доступ к внутренним ресурсам корпоративной локальной сети, полученный злоумышленником в результате логического входа в эту сеть,

(2) несанкционированный доступ к корпоративным данным в процессе их передачи по публичной сети.

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

Но существует и другая,  широко распространенная точка зрения, когда к функциям VPN относят только защиту передаваемого трафика. Возможно, это связано с тем, что наиболее распространенная сегодня публичная сеть  Internet долго использовалась только для передачи открытого трафика, который не нужно было защищать, а именно,  трафика личной (не корпоративной) электронной почты и трафика доступа к общедоступной информации ftp-архивов и Web-серверов. А конфиденциальный корпоративный трафик передавался в то время по выделенным каналам. Поэтому корпоративная сеть защищалась прежде всего от угроз типа (1), то есть от несанкционированного доступа. И только после превращения Internet в универсальное  транспортное средство, переносящее все виды корпоративного трафика, в том числе и конфиденциального, перед средствами корпоративной безопасности  встала  задача отражения угроз типа (2) — угроз при передаче трафика через публичную сеть.

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

Защищенный канал

Для обозначения той важнейшей части технологии VPN, которая направлена на обеспечение безопасности передачи данных по публичной транспортной сети, используется специальный термин — защищенный канал (secure channel или encrypted channel).  

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

·       Конфиденциальность — гарантия того, что в процессе передачи данных по защищенным каналам VPN  эти данные не могут быть просмотрены никем, кроме легальных отправителя и получателя.

·       Целостность — гарантия сохранности передаваемых данных во время их прохождения по защищенному каналу VPN. Никому не разрешено каким-либо образом изменять, модифицировать, разрушать или создавать новые данные.

·       Доступность — гарантия  того, что средства, выполняющие функции VPN, постоянно доступны легальным пользователям. Доступность средств VPN — это комплексный показатель, зависящий от нескольких факторов: надежности реализации, правильной эксплуатации, а также от степени защищенности самого средства от внешних атак. Если средство VPN поддерживается провайдером, то доступность является одной из характеристик, обычно включаемых в соглашение об уровне сервиса (см. часть I статьи).

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

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

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

·       взаимную аутентификацию абонентов при установлении соединения,

·       защиту передаваемых по каналу сообщений от несанкционированного доступа,

·       подтверждение целостности поступающих по каналу сообщений.


Врезки «Базовые технологии безопасности»

Врезка1:

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

В криптографии принято правило Керкхоффа:  стойкость шифра должна определяться только секретностью ключа. Так, все стандартные алгоритмы шифрования (например, DES, RSA) широко известны, их детальное описание содержится в легко доступных документах, но от этого их эффективность не снижается. Злоумышленнику может быть все известно об алгоритме шифрования, кроме секретного ключа. Алгоритм шифрования считается раскрытым, если найдена процедура, позволяющая подобрать ключ за реальное время. Сложность алгоритма раскрытия является одной из важных характеристик криптосистемы и называется криптостойкостью.

Существует  два класса криптосистем — симметричные и асимметричные.

В симметричных схемах шифрования секретный ключ зашифровки совпадает с секретным ключом расшифровки, поэтому принципиальный характер приобретает надежность канала передачи ключа второму участнику секретных переговоров. Проблема с ключами возникает даже в системе с двумя абонентами, а в системе с n абонентами, желающими обмениваться секретными данными по принципу «каждый с каждым», потребуется n´(n-1)/2 ключей, которые должны быть сгенерированы и распределены надежным образом. То есть количество ключей пропорционально квадрату количества абонентов, что при большом числе абонентов делает задачу  управления ключами чрезвычайно сложной.

Несимметричные алгоритмы, основанные на использовании открытых ключей, снимают эту проблему. Особенность шифрования на основе открытых ключей состоит в том, что одновременно генерируется уникальная пара ключей, таких, что текст, зашифрованный одним ключом, может быть расшифрован только с использованием второго ключа, и наоборот. Для того, чтобы в сети все  n абонентов имели возможность не только принимать зашифрованные сообщения, но и сами посылать таковые, каждый абонент должен обладать своей собственной парой ключей. Всего в сети будет 2n  ключей: n открытых ключей, используемых для шифрования и n секретных ключей для дешифрирования. Таким образом решается проблема масштабируемости — квадратичная зависимость количества ключей от числа абонентов в симметричных алгоритмах заменяется линейной зависимостью в несимметричных алгоритмах.  Исчезает и задача секретной доставки ключа. Злоумышленнику нет смысла стремиться завладеть открытым ключом, поскольку это не дает возможности расшифровывать текст. Однако открытый ключ нужно защищать от подлогов, чтобы злоумышленник под именем легального пользователя не навязал свой открытый ключ, после чего с помощью своего закрытого ключа он смог бы расшифровывать все сообщения, посылаемые легальному пользователю и отправлять свои сообщения от его имени.

 


Врезка2

Односторонняя функция шифрации. Цифровая подпись.  Во многих базовых технологиях безопасности используется шифрация с помощью односторонней функции (one-way function), называемой также хэш-функцией (hash function) или дайджест-функцией (digest function).

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

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

Помимо обеспечения целостности сообщений  дайджест является средством аутентификации передаваемого документа, то есть его цифровой подписью. Часто для построения схемы цифровой подписи применяется помимо техники дайджестов какой-либо из алгоритмов шифрования с открытым ключом (например, RSA). В соответствии с этим алгоритмом каждый пользователь сети имеет свой закрытый ключ, необходимый для формирования подписи; а соответствующий этому секретному ключу открытый ключ, предназначенный для проверки подписи, известен всем другим пользователям сети. Цифровая подпись может быть построена также на основе классических симметричных алгоритмов типа DES.

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

 


Врезка3

Аутентификация (authentication) — доказательство того, что некоторый объект (личность, устройство, приложение или данные) является именно тем, за кого он себя выдает.

Аутентификацию следует отличать от идентификации. Идентификация заключается просто в сообщении объектом системе своего идентификатора, без доказательства того, что введенный идентификатор принадлежит именно ему.

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

 


Врезка4

Аутентификация с применением цифровых сертификатов является альтернативой использованию паролей и представляется естественным решением в условиях, когда число пользователей сети (пусть и потенциальных) измеряется миллионами. В таких обстоятельствах процедура предварительной регистрации пользователей, связанная с назначением и хранением их паролей, становится крайне обременительной, опасной, а иногда и просто нереализуемой. При использовании сертификатов сеть, которая дает пользователю доступ к своим ресурсам, не хранит никакой информации о своих пользователях — они ее предоставляют сами в своих запросах в виде сертификатов, удостоверяющих личность пользователей. Сертификаты выдаются при выполнении определенных условий специальными уполномоченными организациями — центрами сертификации (Certificate Authority). Поэтому задача хранения секретной информации (закрытых ключей) возлагается теперь на самих пользователей, что делает это решение гораздо более масштабируемым, чем вариант с использованием централизованной базой паролей.

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

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

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

Туннелирование

Протоколы защищенного канала часто используют в своей работе такой механизм как туннелирование (инкапсуляция). При туннелировании пакет протокола более низкого уровня помещается в поле данных пакета протокола более высокого или того же самого уровня. Например, при туннелировании кадр Ethernet может быть размещен в пакете IP, а пакет IPX — в пакете IP. Возможен и такой вариант: пакет IP размещается в пакете IP.

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

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

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

Туннелирование используется не только для обеспечения конфиденциальности содержимого пакета, но и для обеспечения его целостности и аутентичности. И в этом случае защита данных осуществляется более полно, чем без туннелирования, так как электронная подпись распространяется в этом случае на все поля пакета, а  без туннелирования — только на те, которые в процессе передачи сети не изменяются (примером поля, которое нельзя подписать без туннелирования, может служить поле TTL пакета IP, которое уменьшается на 1 каждым промежуточным маршрутизатором).

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

Туннелирование часто применяется также для согласования разных транспортных технологий. Например, если данные протокола IPX нужно передать через транзитную сеть IP, то маршрутизатор на границе IPX и IP сетей упаковывает исходный IPX пакет в создаваемый заново пакет IP и адресует его маршрутизатору, который соединяет транзитную IP-сеть с сетью IPX. Этот маршрутизатор извлекает пакет IPX из прибывшего IP пакета и отправляет его далее по IPX сети.

Сам механизм туннелирования не зависит от того, с какой целью туннелирование применяется — для согласования транспортных технологий или для защиты данных. Этот механизм можно представить как результат работы протоколов трех типов:

·       протокола-пассажира,

·       несущего протокола,

·       протокола туннелирования.

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

Рис. VPN_TUN. Схема использования тунелирования для зашифрованной передачи трафика IPX через сеть IP.

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

Уровни защищенных каналов

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

Рис. VPN_OSI. Уровни защищенных каналов VPN

Что же касается системных средств поддержки защищенных каналов, то они располагаться на разных уровнях модели OSI,  начиная с прикладного. На прикладном уровне встречается много версий известных протоколов, которые отличаются от своих стандартных реализаций наличием тех или иных средств защиты передаваемых данных, например протоколы S/MIME или PGP, защищающие данные электронной почты. Недостатком такого подхода является узкая область действия — протокол защищает только вполне определенную сетевую службу — файловую, гипертекстовую или почтовую. Поэтому для каждой службы необходимо разрабатывать соответствующую защищенную версию протокола и выполнять эту работу при разработке новой службы. Другим недостатком является необходимость переписывания приложений, которые пользуются соответствующими сетевыми службами — в приложения должны быть встроены явные вызовы функций защищенных версий протокола.

Защита на представительном уровне — протоколы SSL и TLS

При реализации функций защиты данных на представительном уровне протокол становится гораздо более универсальным — его услугами могут пользоваться любые приложения или протоколы прикладного уровня. Наиболее известным протоколом защищенного канала, работающим на представительном уровне, является протокол Secure Socket Layer (SSL), разработанный компанией Netscape Communications. Протокол SSL прошел проверку временем, работая в популярных браузерах Netscape Navigator и Internet Explorer, а также Web-серверах всех ведущих производителей. В январе 1999 года на смену версии SSL 3.0 пришел протокол Transport Layer Security (TLS), который является стандартом Internet.  TLS базируется на SSL и различия между SSL 3.0 и TLS 1.0 не слишком существенны (хотя и достаточны для того, чтобы эти протоколы не были совместимыми). Основные свойства протокола SSL, описанные ниже, применимы и к TLS.

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

Взаимная аутентификация обеих сторон в SSL выполняется путем обмена сертификатами при установлении SSL-сессии. SSL поддерживает сертификаты различных сертифицирующих организаций, основанные на стандарте Х.509, а также стандарты инфраструктуры публичных ключей PKI (Public Key Infrastructure), с помощью которой организуется выдача и проверка подлинности сертификатов.

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

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

Несмотря на то, что протокол SSL может использоваться для создания защищенного канала между любыми приложениями, наиболее широко он используется протоколом HTTP (режим HTTPS). Когда используются SSL-совместимые браузеры (например, Internet Explorer или Netscape Navigator) и SSL-совместимые Web-серверы, то вся передаваемая между браузером и сервером информация (например номера кредитных карточек) недоступна злоумышленнику. При вызове защищенной страницы пользователь не видит  процесс организации защищенного канала. Браузер вызывает сервер, а тот посылает свой общедоступный сертификат, и если он был выдан организацией, признаваемой браузером, то транзакция осуществляется.

К недостаткам протоколов SSL и TLS можно отнести то, что для транспортировки своих сообщений они используют только  один протокол сетевого уровня — IP и, следовательно, могут работать только в IP-сетях. Кроме того на практике применение защитных свойств SSL/TLS не в полной мере прозрачно для прикладных протоколов, так для инициации защищенного канала они должны использовать явные вызовы типа STARTSSL.

Защита на сетевом уровне с помощью протокола IPSec

Чем ниже по стеку расположены средства защищенного канала, тем проще их сделать прозрачными для приложений и прикладных протоколов.

Наиболее известным средством защиты сетевого уровня является стандартный протокол IPSec. Этот протокол либо встраивается в IP, либо работает между IP и нижележащими протоколами, такими как Ethernet или PPP. Если составная сеть построена с помощью другого сетевого протокола, например, IPX, то IPSec применить нельзя.

Протокол IPSec является сегодня одним из наиболее перспективных протоколов защищенного канала. Этому способствуют два фактора — популярность Internet и высокая степень гибкости стандарта IPSec. В сущности этот стандарт определяет не один протокол, а целую систему протоколов, которую можно конфигурировать в зависимости от потребностей.

IPSec поддерживает две группы функций: аутентификации данных (это делает протокол Authentication Header, AH) и шифрования (обязанности протокола Encapsulation Security Header, ESP), причем они могут применяться как совместно, так и по отдельности.   Кроме того, при установлении защищенного канала выполняется аутентификация конечных узлов или пользователей. Для выполнения этих функций IPSec может использовать различные алгоритмы аутентификации и шифрации — об этом взаимодействующие стороны договариваются при установлении соединения. Для обеспечения совместимости стандарт IPSec предусматривает обязательный набор алгоритмов и функций аутентификации и шифрации: это алгоритм DES для шифрации и односторонние функции MD5 и SHA-1 для проверки аутентичности и целостности данных.  Многие производители дополняют этот обязательный набор новыми алгоритмами, такими как Triple DES, Blowfish, Cast, CDMF, Idea, RC5.

IPSec, как и протоколы SSL/TLS, использует для защиты данных симметричное шифрование с помощью секретного ключа сессии. Ключ этот может распределяться между точками защищенного канала вручную или автоматически, с помощью протокола Internet Key Exchange (IKE). Протокол IKE выполняет также задачу взаимной аутентификации  сторон с помощью техники публичных ключей и цифровых сертификатов.

Система IPSec принимает решение о способе защиты пакетов, отправляемых в сеть, автоматически, на основании набора правил, хранящихся в базе  Security Policy Database (SPD). Администратор сети может определить некоторый класс пакетов, характеризуемый набором признаков (в их число входят IP-адреса источника и назначения, TCP/UDP порты, имена пользователя и узла-отправителя и т.п.), а затем задать для этого класса пакетов конкретный способ защиты, например, шифрование с помощью алгоритма Triple DES и аутентификацию данных с помощью функции SHA-1. Такой способ управления протоколом IPSec полностью прозрачен для приложений, что очень удобно для организации VPN.

Конкретные требования к реализации базы SPD в стандарте IPSec не приводятся, а на практике эта база может работать совершенно автономно в каждом устройстве IPSec, а может и координировать свою работу с централизованной справочной службой (Directory Service) корпоративной сети, хранящей все системные параметры, в том числе и параметры политики безопасности. В этом случае узел IPSec должен поддерживать протокол взаимодействия со справочной службой — им может быть стандартный для Internet протокол LDAP или фирменный протокол.

Канальные протоколы защиты PPTP, L2F и L2TP

Протоколы защищенного канала могут работать также и на канальном уровне модели OSI. К наиболее популярным протоколам этого уровня относятся протоколы PPTP, L2F и L2TP. Как и в случае защищенного канала сетевого уровня, здесь также обеспечивается прозрачность средств защиты для приложений и служб прикладного уровня. Дополнительным достоинством такого подхода является независимость средств  защиты от применяемого протокола сетевого уровня, поэтому такие протоколы защиты могут использоваться как в IP-сетях, так и в сетях, работающих на основе протоколов IPX или DECnet 

Разработчики протоколов PPTP, L2F и L2TP выбрали в качестве протокола-пассажира  протокол PPP (Point-to-Point Protocol), который является стандартом  Internet при передаче данных по выделенным или коммутируемым каналам доступа к глобальным сетям. Такое решение весьма универсально, так как PPP может переносить пакеты практически всех протоколов, используемых в корпоративных сетях — IP, IPX,  NetBEUI, Ethernet и т.д.

Из протоколов PPTP, L2F и L2TP только PPTP является протоколом защищенного канала в строгом значении этого термина, так как позволяет туннелировать и шифровать трафик PPP, а протоколы L2F и L2TP выполняют только функции туннелирования PPP, создавая предпосылки для шифрования его пакетов, но оставляя эту задачу какому-нибудь другому протоколу, например, IPSec.

Протокол PPTP (Point-to-Point-Tunneling Protocol) разработан компанией Microsoft совместно с компаниями Ascend Communications, 3Com/Primary Access, ECI-Telematics и US Robotics. Он был представлен в рабочую группу "PPP Extentions" IETF в качестве претендента на стандартный протокол защищенного канала, однако стандартом не стал, оставшись фирменной реализацией Microsoft.

PPTP умеет упаковывать кадры PPP только в пакеты IP, поэтому сфера его деятельности ограничена Internet и публичными сетями TCP/IP. Туннель устанавливается между сервером удаленного доступа провайдера публичной сети и PPTP-сервером корпоративной сети. При установлении туннеля через IP-сеть пользователь проходит аутентификацию стандартным для PPP способом — по протоколам PAP или CHAP, причем данные для аутентификации прозрачно передаются через туннель на PPTP-узел корпоративной сети. В результате политику безопасности доступа диктует корпоративный администратор, а не провайдер.

После установления PPTP-соединения  поступающие в сервер провайдера пакеты PPP шифруются либо по алгоритму DES, либо по  RC-4, а в качестве секретного ключа используется дайджест от пароля пользователя. Автоматический алгоритм распределения ключей для PPTP не определен. К сожалению, этот протокол не гарантирует целостности и аутентичности данных.

Так как протокол PPTP не получил широкой поддержки производителей маршрутизаторов и серверов удаленного доступа, то организовать PPTP-туннель провайдеру чаще всего оказывается затруднительно — его оборудование этот протокол не поддерживает. Поэтому компания Microsoft реализовала и другой вариант работы PPTP, в котором туннель прокладывается между компьютером удаленного пользователя и сервером корпоративной сети. Это возможно, когда в этих узлах работает программное обеспечение Windows NT или Windows 95/98. Правда, при этой схеме на удаленного пользователя ложится дополнительная нагрузка — он должен установить и сконфигурировать PPTP, что не очень просто. Кроме того, после прохождения этих этапов использование PPTP в этом варианте также не прозрачно — пользователь должен сначала установить традиционное PPP-соединение с провайдером, а затем вручную вторично установить PPTP-соединение со своим корпоративным сервером, выполняя фиктивный «звонок» по его IP-адресу.

Протокол L2F (Layer 2 Forwarding) также является фирменным протоколом — его разработала компания Cisco Systems. Он повторил судьбу PPTP: был представлен в IETF для стандартизации и отвергнут — было решено не давать преимущества ни одной компании, а разработать на основе нескольких предложений некоторый объединенный протокол, которым и стал протокол L2TP (Layer 2 Tunneling Protocol).

Протокол L2TP поддерживает только одну схему образования туннеля — между сервером удаленного доступа провайдера и маршрутизатором корпоративной сети. При передаче через туннель кадры PPP не шифруются. Сервер провайдера выполняет только идентификацию пользователя, а всю работу по аутентификации прозрачно выполняет  маршрутизатор корпоративной сети, причем тем способом, который выберет сам. Для автоматизации прокладки туннеля предполагается использование в сервере удаленного доступа провайдера конфигурационной базы пользователей, где именам пользователей  соответствуют адреса их корпоративных маршрутизаторов. Туннель может прокладываться в любых сетях, при этом единственное требование, предъявляемое к транспорту, состоит в том, чтобы он поддерживал пакетный режим взаимодействия  «точка-точка». Таким транспортом может быть, например, протокол UDP, постоянные виртуальные соединения frame relay или коммутируемые виртуальные соединения X.25. 

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

Хотя протоколы защиты данных могут работать практически на любом уровне стека протоколов, обычно к средствам VPN относят только те протоколы, которые полностью прозрачны для приложений и сетевых служб. Прозрачность средств защиты позволяет провайдерам услуг или корпоративным администраторам унифицированным способом обеспечивать защиту данных любых приложений, как тех, которые работают сегодня, так и тех, которые будут применяться завтра. Поэтому к средствам VPN, как правило, относят протоколы трех уровней: канального, сетевого и транспортного, и эти уровни называют соответственно VPN-уровнями. А протоколы SSL или TLS, которые прозрачностью не обладают, по этой причине некоторые специалисты не относят к средствам VPN.

Типы VPN-устройств

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

·       отдельное аппаратное устройство VPN на основе специализированной ОС реального времени, имеющее 2 или более сетевых интерфейса и аппаратную криптографическую поддержку — так называемый «черный ящик VPN» (VPN black box);

·       отдельное программное решение, которое дополняет стандартную операционную систему функциями VPN;

·       расширение брандмауэра за счет дополнительных функций защищенного канала;

·       средства VPN, встроенные в маршрутизатор или коммутатор.

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

Устройства VPN могут играть в виртуальных частных сетях роль шлюза или клиента (рис.VPN_sluz).

Шлюз VPN — это сетевое устройство, подключенное к нескольким сетям, которое выполняет функции шифрования и аутентификации для многочисленных хостов позади него. Размещение шлюза VPN должно быть аналогично размещению брандмауэра, то есть таким, чтобы через него проходил весь трафик, предназначенный для внутренней корпоративной сети. (Если в сети имеется и брандмауэр, и VPN-шлюз, то их относительное расположение представляет собой нетривиальную задачу, которая требует особого рассмотрения.) Сетевое соединение VPN прозрачно для пользователей позади шлюза, оно  представляется им выделенной линией, хотя в действительности прокладывается через сеть с коммутацией пакетов.

В зависимости от стратегии безопасности предприятия, исходящие пакеты либо шифруются, либо посылаются в открытом виде, либо блокируются шлюзом. Для входящих туннелируемых пакетов внешний адрес является адресом VPN-шлюза, а внутренний адрес — адресом некоторого хоста позади шлюза.

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

Рис. VPN_shluz. Шлюзы и клиенты VPN.

Клиент VPN — это программный или программно-аппаратный комплекс, обычно на базе персонального компьютера, у которого сетевое транспортное обеспечение модифицировано для выполнения шифрования и аутентификации трафика, которым устройство обменивается с шлюзами VPN и/или другими VPN-клиентами. Ввиду стоимостных ограничений реализация VPN-клиента чаще всего представляет собой программное решение, дополняющее стандартную операционную систему, например, Windows 95/98 или Unix.

Для создания виртуальной частной сети крупного предприятия нужны как VPN-шлюзы, так и VPN-клиенты.  Шлюзы целесообразно использовать для защиты локальных сетей предприятия, а VPN-клиенты нужны для удаленных и мобильных пользователей, которым требуется устанавливать соединения с корпоративной сетью через Internet. В том случае, когда организацию VPN берет на себя провайдер, вся виртуальная частная сеть может быть построена на шлюзах, размещенных в сети провайдера, прозрачно для сетей и удаленных пользователей предприятия.

Выделенные аппаратные VPN-шлюзы

Выделенные аппаратные VPN-шлюзы («черные ящики») являются лидерами практически по всем возможным показателям кроме одного — стоимости. Но потребитель может быть уверен, что покупая аппаратный VPN-шлюз у известного производителя, он тратит деньги не зря, так как получает один из лучших во всех отношениях  продукт для организации VPN.

Аппаратные шлюзы высшего класса обязательно поддерживают IPSec, причем со многими расширениями в виде разнообразных новых и мощных в криптографическом отношении алгоритмов, обладают высокой производительностью за счет аппаратной поддержки операций шифрования, работают с цифровыми сертификатами X.509 и публичной инфраструктурой  ключей PKI, поддерживают работу со справочными службами по протоколу LDAP. По удобству и простоте инсталляции аппаратные шлюзы обычно намного превосходят программные шлюзы и такие комбинированные решения, как шлюзы на основе брандмауэров и маршрутизаторов. Аппаратное устройство уже при включении готово работать, ему не нужно проходить громоздкий процесс инсталляции в среде некоторой ОС, как это требуется для большинства программных или комбинированных продуктов. Для начала работы необходимо только задать конкретные значения адресов и, может быть, ключей для установления туннелей.

Примером может служить комплект аппаратных продуктов Permit Enterprise Suite компании TimeStep. Комплект выполнен на базе специализированного оборудования, совместим с IPSec и сертифицирован ICSA, поддерживает сертификаты открытых ключей X.509 версии 3, предлагает аппаратное шифрование DES и Triple DES. Входящие в комплект три варианта шлюза позволяют выбрать нужную для конкретную производительность: Permit/Gate 2520 обеспечивает шифрование Triple DES со скоростью до 4 Мбит/с, Permit/Gate 4520 — со скоростью до 10 Мбит/с, а Permit/Gate 7520  — со скоростью до 70 Мбит/с. Шлюзы 2520 и 4520 могут обслуживать до 500 защищенных сеансов одновременно, а 7520 — до 2000.

Permit/Gate можно конфигурировать и контролировать удаленным образом из любой точки виртуальной частной сети. Кроме того, сетевые администраторы могут разделить сеть на сегменты со вводом для них правил различной степени строгости, в зависимости от требований сети. Permit Enterprise совместим с LDAP, поэтому данные PKI можно хранить и запрашивать удаленным образом.

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

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

Выделенные программные VPN-шлюзы

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

Одним из наиболее популярных продуктов этого типа является Microsoft RAS (Remote Access Service) — программный сервер удаленного доступа, выпускаемый в составе Windows NT.  Начиная с версии Windows NT 4.0, этот продукт поддерживает технологию VPN за счет встроенной реализации протокола защищенного канала PPTP. Основным достоинством этого продукта является его экономичность, а недостатком — низкая производительность, которая ограничивает его применение организацией VPN-каналов с удаленными пользователями, то есть конфигурациями «клиент-сеть». В настоящее время появилась более совершенная версия этого продукта — RRAS (Routing and Remote Access Service), которая является бесплатным приложением к Windows NT 4.0 и, как ожидается, войдет  в состав коммерческой версии Windows 2000. RRAS включает усовершенствованный программный многопротокольный маршрутизатор, который поддерживает протоколы маршрутизации RIP (Routing Information Protocol) и OSPF (Open Shortest Path First). За счет этих свойств RRAS может быть использован как шлюз VPN и при взаимодействии «сеть-сеть».

VPN-средства брандмауэров

Сегодня многие решения опираются на расширения брандмауэров с дополнительными функциями поддержки VPN, что позволяет установить через Internet шифрованное соединение с другим брандмауэром. Такое дополнение брандмауэра является естественным, так как при этом все функции по защите корпоративной сети сосредотачиваются в одном устройстве. При этом повышается качество администрирования средств защиты и снижаются соответствующие накладные расходы — вместо настройки и конфигурирования двух устройств, такие работы проводятся в одном устройстве. Например, аутентификация пользователя проводится только один раз, поэтому нет нужды вводить дважды его пароль или настраивать два устройства на согласованную работу по аутентификации. Кроме того, отпадает необходимость заботиться о защите канала, связывающего брандмауэр и VPN-шлюз.

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

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

В результате для обеспечения качественной защиты в том случае, когда корпоративная сеть подключена к публичной высокоскоростным каналом, например T3 со скоростью 45 Мбит/с, рекомендуется использовать VPN-шлюз, выполненный в виде отдельного аппаратного или  программного устройства.

Тем не менее, производители брандмауэров расширяют поддержку функций VPN в своих продуктах. Например, компания Check Point Software Technologies, чей брандмауэр FireWall-1 многократно признавался лучшим продуктом среди брандмауэров высшего функционального класса, выпускает продукт VPN-1, который тесно интегрирован с FireWall-1. VPN-1 расшифровывает поступающие по защищенному каналу данные, а затем FireWall-1 применяет к ним стандартные правила доступа.

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

VPN на базе маршрутизатора

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

Проблема скорости действительно актуальна — большинство маршрутизаторов, поддерживающих функции VPN, обеспечивают шифрование трафика со скоростью не более 10 Мбит/с. Производители маршрутизаторов осознают и решают эту проблему, обычно за счет аппаратной поддержки функций шифрования. Например, маршрутизатор Fort Knox компании Internet Devices может шифровать трафик со скоростью линии даже в том случае, когда трафик поступает в него по каналу T3.

Поддержку функций VPN можно найти не только у весьма специализированных моделей маршрутизаторов, но и в традиционных моделях лидеров этого сектора рынка. Так компания Cisco Systems включила в свое программное обеспечение IOS 11.3(3)T поддержку протоколов L2TP и IPSec. Функции VPN могут выполняться в маршрутизаторах Cisco как полностью программным путем, так и с привлечением специальной платы расширения, имеющей сопроцессор шифрования. Компания 3Com при реализации технологии VPN также встроила функции VPN в маршрутизаторы NetBuilder II, SuperStack II NetBuilder и OfficeConnect NetBuilder Platform.

 

Виктор Олифер,

Наталья Олифер.