Производственные мощности размещаются неподалеку от источников ресурсов и транспортных узлов, аппарат управления — в бизнес-центрах, торговые точки и центры предоставления услуг — поближе к потребителю. В таких условиях перед ИТ-отделом предприятия ставится задача объединения нескольких географически разнесенных структур в единую вычислительную сеть.
Все знают, как построить локальную сеть в пределах одного здания. Но многие начинают испытывать затруднения, если необходимо соединить несколько таких сетей, когда расстояние между ними достигает десятков, а то и сотен километров, или дать доступ к вычислительной сети сотруднику, находящемуся в командировке. Начиная с некоторой дистанции трудности прямого подключения растут как снежный ком: прокладка собственного кабеля по карману далеко не всякой фирме, а радиосвязь на больших расстояниях ненадежна, требует получения специального разрешения и не всегда возможна.
В такой ситуации выход видится прежде всего в использовании сети Интернет. Действительно, сейчас практически в любом городе вы получите за разумные деньги быстрое подключение к глобальной сети. А уж выйти на связь с помощью коммутируемого доступа можно из любой гостиницы, в которой есть телефон (или которая находится в радиусе действия сотового оператора).
Но использование для информационного обмена сети Интернет (или другой сети общего пользования, предоставляемой провайдером или национальным оператором электрической связи) способно решить проблему лишь отчасти. Во-первых, программное обеспечение фирмы может попросту не работать через Интернет, например, по причине использования в локальной сети протокола, отличного от TCP/IP. Во-вторых, даже если программы заработают, вряд ли допустимо передавать через общую сеть данные, содержащие коммерческую тайну, в открытом виде (а далеко не всякое прикладное программное обеспечение выполняет шифрование всего сеанса информационного обмена).
И все же выгода от использования услуг связи специализированных организаций оказалась настолько привлекательной, что решение было найдено. Были разработаны технологии, позволяющие передавать данные практически через любую открытую сеть общего пользования таким образом, что для участников информационного обмена это выглядит так, как будто используется частная защищенная локальная сеть. Семейство таких технологий получило название виртуальная частная сеть — VPN (Virtual Private Network).
Принцип работы VPN
Виртуальная частная сеть базируется на трех китах: туннелирование, шифрование и аутентификация.
Туннелирование обеспечивает передачу данных между двумя точками — окончаниями туннеля — таким образом, что для источника и приемника данных оказывается скрытой вся сетевая инфраструктура, лежащая между ними. Транспортная среда туннеля, как паром, подхватывает пакеты используемого сетевого протокола у входа в туннель и без изменений доставляет их к выходу. Построения туннеля достаточно для того, чтобы соединить два сетевых узла так, что с точки зрения работающего на них программного обеспечения они выглядят подключенными к одной (локальной) сети. Однако нельзя забывать, что на самом деле «паром» с данными проходит через множество промежуточных узлов (маршрутизаторов) открытой публичной сети.
Такое положение дел таит в себе две проблемы. Первая заключается в том, что передаваемая через туннель информация может быть перехвачена злоумышленниками. Если она конфиденциальна (номера банковских карточек, финансовые отчеты, сведения личного характера), то вполне реальна угроза ее компрометации, что уже само по себе неприятно. Хуже того, злоумышленники имеют возможность модифицировать передаваемые через туннель данные так, что получатель не сможет проверить их достоверность. Последствия могут быть самыми плачевными. Учитывая сказанное, мы приходим к выводу, что туннель в чистом виде пригоден разве что для некоторых типов сетевых компьютерных игр и не может претендовать на более серь-езное применение.
К счастью, обе проблемы решаются современными средствами криптографической защиты информации. Чтобы воспрепятствовать внесению несанкционированных изменений в пакет с данными на пути его следования по туннелю, используется метод электронной цифровой подписи (ЭЦП). Суть метода состоит в том, что каждый передаваемый пакет снабжается дополнительным блоком информации, который вырабатывается в соответствии с асимметричным криптографическим алгоритмом и уникален для содержимого пакета и секретного ключа ЭЦП отправителя. Этот блок информации является ЭЦП пакета и позволяет выполнить аутентификацию данных получателем, которому известен открытый ключ ЭЦП отправителя. Защита передаваемых через туннель данных от несанкционированного просмотра достигается путем использования сильных алгоритмов шифрования.
Таким образом, связка «туннелирование + аутентификация + шифрование» позволяет передавать данные между двумя точками через сеть общего пользования, моделируя работу частной (локальной) сети. Иными словами, рассмотренные средства позволяют построить виртуальную частную сеть. Дополнительным приятным эффектом VPN-соединения является возможность (и даже необходимость) использования системы адресации, принятой в локальной сети.
Реализация виртуальной частной сети на практике выглядит следующим образом. В локальной вычислительной сети офиса фирмы устанавливается сервер VPN. Удаленный пользователь (или маршрутизатор, если осуществляется соединение двух офисов) с использованием клиентского программного обеспечения VPN инициирует процедуру соединения с сервером. Происходит аутентификация пользователя — первая фаза установления VPN-соединения. В случае подтверждения полномочий наступает вторая фаза — между клиентом и сервером выполняется согласование деталей обеспечения безопасности соединения. После этого организуется VPN-соединение, обеспечивающее обмен информацией между клиентом и сервером в форме, когда каждый пакет с данными проходит через процедуры шифрования/дешифрования и проверки целостности — аутентификации данных.
Чтобы обеспечить совместимость различных реализаций VPN, были приняты стандарты, наиболее распространенными среди которых являются протоколы PPTP и L2TP (см. врезку «Протоколы PPTP и L2TP с IPSEC»). Оба эти стандарта обеспечивают схожий уровень функциональности, однако поскольку L2TP использует протокол UDP для организации туннеля, он может работать через сети ATM (Asynchroneus Transfer Mode), Frame Relay и X.25. Кроме того, L2TP предлагает более высокую защищенность соединения за счет использования протокола обеспечения безопасности IPSec.
Средства для реализации VPN
Приступая к построению VPN, прежде всего необходимо определиться со средствами, которые будут выделены на реализацию проекта. VPN-соединения могут быть организованы как с помощью программного обеспечения (коммерческого или свободно распространяемого), так и с помощью аппаратных средств, в изобилии появившихся на рынке.
Крупная фирма в случае необходимости обеспечить безопасное соединение нескольких офисов (по схеме route-to-route) и дать возможность удаленной работы (remote access) с ресурсами локальной сети своим сотрудникам скорее всего предпочтет оборудование Cisco как наиболее мощный и гибкий вариант. Если фирма только развивается и ей требуется подключить к главному офису одно региональное представительство, можно ограничиться маршрутизаторами-брандмауэрами производства ZyXEL или D-Link. Это решение существенно дешевле, а главное, не предъявляет таких высоких требований к профессиональному уровню системных администраторов, как настройка маршрутизаторов Cisco. Обе компании предоставляют подробную документацию, описывающую как возможности своих продуктов, так и процедуру их настройки с вариантами использования. Нужно отметить, что аппаратные устройства, как правило, являются комплексными решениями и предлагают целый набор смежных технологий, которые облегчают интеграцию вычислительных устройств через VPN-соединение и увеличивают уровень безопасности.
Обращаясь к программным реализациям VPN, нужно вспомнить о том, что операционные системы Microsoft имеют встроенную поддержку VPN-соединений по протоколам PPTP или L2TP. Если построение VPN-сервера на базе серверной операционной системы этого производителя может вызывать споры и дискуссии, то наличие интегрированного VPN-клиента безусловно является удобством и позволяет организовывать удаленные рабочие места сотрудников с минимальными затратами. Если же в фирме используется другая операционная система или по каким-то причинам интегрированные средства признаны неудовлетворительными, стоит обратить внимание на свободную кросс-платформенную реализацию VPN-сервера OpenVPN, которая доступна по ссылке:
http://openvpn.net/.
При использовании оборудования или программного обеспечения различных производителей нужно убедиться, что устройства поддерживают одинаковые протоколы для VPN. В противном случае их совместное функционирование будет либо невозможным, либо малоэффективным из-за необходимости применения некоторого подмножества поддерживаемых протоколов, что может существенно снизить уровень информационной безопасности.
Протоколы PPTP и L2TP с IPSec
Сетевая технология PPTP (Point-to-Point Tunneling Protocol) — развитие протокола удаленного доступа PPP (Point-to-Point Protocol). PPTP, относящаяся к стеку протоколов TCP/IP, была создана для организации работы многопротокольных сетей через Интернет. Для функционирования PPTP необходимо установить два TCP-соединения: для управления VPN-соединением и для передачи данных. Конфиденциальность передаваемой информации обеспечивается шифрованием по схеме RC4 с ключом до 128 бит.
Улучшенная версия протокола PPTP — индустриальный стандарт L2TP (Layer Two Tunneling Protocol), представляющий собой комбинацию технологий PPTP и L2F (Layer Two Forwarding). Транспортная среда для протокола L2TP — UDP. Шифрование данных обеспечивает комплекс средств, предлагаемых протоколом безопасности IPSec. Доступны следующие методы шифрования: DES (Data Encryption Standard) с 56-бит ключом и 3DES (Triple DES) с тремя 56-бит ключами.
Кроме того, IPSec предоставляет механизм согласования ключей IKE (Internet Key Exchange), аутентификацию Kerberos и другие технологии информационной безопасности.
В основе работы обоих рассмотренных протоколов туннелирования лежит инкапсуляция пакетов протокола сетевого уровня, используемого в локальной сети, в PPP-пакеты. На рисунках представлен вид структуры информации, передаваемой по туннелю. Полезные данные, заключенные в пакеты протоколов сетевого уровня (IP, IPX или NetBEUI), снабжены PPP-заголовками, содержащими информацию о протоколе. Они необходимы для того, чтобы полученные данные направлялись соответствующему драйверу. Протокол PPTP шифрует пришедшую информацию и снабжает ее заголовком, требующимся для доставки получателю — шлюзу VPN. В отличие от него, L2TP добавляет заголовки L2TP и UDP. После этого модуль обеспечения безопасности IPSec выполняет шифрование данных. Затем они, сопровожденные IPSec-заголовком, дополняются адресной информацией, необходимой для доставки.
Аппаратные устройства VPN
Поскольку стоимость аппаратных решений для организации VPN приемлема даже для малых фирм или индивидуальных предпринимателей, а в эксплуатации они гораздо удобнее и надежнее, нежели программные средства на базе ПК, имеет смысл обратить внимание на некоторые из них. Создать точку доступа для нескольких VPN-соединений можно на основе VPN-маршрутизатора DI-804HV/DI-808HV (позволяет организовать до 40 соединений) производства D-Link или брандмауэра ZyWALL (от 1 до 100 соединений в зависимости от модификации) компании ZyXEL. Конфигурирование обоих устройств может быть выполнено через удобный веб-интерфейс, продукты ZyXEL, кроме того, позволяют получить доступ к ZyNOS (сетевой операционной системе ZyXEL) в режиме командной строки по протоколу Telnet, что дает возможность более тонкой настройки и отладки соединений. Интересным и недорогим решением для объединения локальных сетей является использование ADSL модема-маршрутизатора-брандмауэра ZyXEL Prestige P661H. Это устройство позволяет организовать два VPN-соединения, но помимо того может служить мостом между тремя IP-подсетями, разделяющими общую среду Ethernet (с возможностью фильтрации трафика между ними), направлять IP-трафик в соответствии с таблицей статических маршрутов, реализует фирменную технологию Any-IP, которая позволяет задействовать его в качестве шлюза по умолчанию компьютерам, сконфигурированным в расчете на работу в другой подсети.
При настройке описанных устройств нужно внимательно прописывать параметры VPN-соединений, так как в случае даже небольшой ошибки туннели не установятся. Например, предопределенные ключи (Preshared Key) должны быть одинаковыми на обоих окончаниях туннеля, для одного и того же VPN-соединения не могут различаться механизмы согласования ключей (Manual или IKE) и криптографические алгоритмы шифрования и аутентификации. Если что-то отказывается работать, необходимо обратиться к сопроводительной документации, понять принцип, в соответствии с которым должен функционировать проблемный участок, и определить круг возможных причин не-работоспособности.
Выбирая параметры туннеля, следует внимательно ознакомиться с возможными вариантами его реализации, с тем чтобы быть уверенным в получении должной функциональности. Так, например, протокол AH (Authentication Header) организации SA (Security Association) обеспечивает только аутентификацию передаваемых данных без их шифрования. Для получения полной защиты следует выбирать протокол ESP (Encapsulating Security Payload).