14 лет назад 20 октября 2004 в 3:32 80

Сегодня мало кто осмелится передавать важные незашифрованные данные через интернет, где что ни узел, то копилка троянов и снифферов. А как обстоит дело в корпоративных сетях?

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

Одним из самых значимых игроков на рынке программных VPN-шлюзов является компания Aventail (www.aventail.com). Для реализации разных VPN-соединений ею представлена целая линейка продуктов. Весьма популярен клиент-серверный продукт Aventail ExtraNet Center, использующий Socks 5 (протокол proxy-сервера) и выполняющийся на платформах Windows NT, Unix, Solaris и др.

Наиболее известным отечественным решением является продукт под названием ViPNet компании “ИнфоТеКС”, который достаточно прост в конфигурировании и хотя реализует VPN в минимальном объеме, предоставляет ряд дополнительных сервисов администратору и непосредственно пользователям. Также стоит отметить, что компанией был создан собственный драйвер сетевой защиты IP-LIR (ip-lir.sys), способный работать до стека сетевых протоколов, что позволяет производить мониторинг всего IP-трафика, проходящего через интерфейс компьютера.

Программа функционирует под всеми версиями Windows и Linux (поддержка Solaris и BSD будет реализована в последующих версиях). Более подробное описание ViPNet представлено на странице infotecs.ru/Soft/custom.htm. Там же можно скачать демо-версию (~22 Мб). Разумеется, поддержка VPN присутствует и в современных операционных системах.

Протоколы туннелей VPN (L2TP, PPTP, IPSec)

Для построения виртуальной частной сети используются свои протоколы канального уровня. Есть, конечно, решения, при которых простой PPP работает в связке с SSH, но к стандартным они не относятся. Наиболее распространенными решениями для построения VPN стали следующие протоколы:
– PPTP (Point-to-Point Tunneling Protocol), разработанный компаниями Microsoft, 3Com и Asced Communications. На сегодняшний день распространен очень широко благодаря внедрению в последние версии Windows.
– L2F (Layer-2 Forwarding) – протокол канального уровня, разработанный фирмой Cisco Systems и внедряемый в ее аппаратных платформах VPN.
– L2TP (Layer-2 Tunneling Protocol) – официальный стандарт интернета, поддерживается операционной системой Windows.
– SKIP (Simple Key-management for Internet Protocols) – протокол, применяемый в оборудовании компании Sun Microsystems, а потому являющийся достаточно специфическим решением (особенно для рядового пользователя).
– IPSec (Internet Protocol Security) – официально утвержденный протокол интернета, работающий на IP-уровне.

НАСТРОЙКА VPN СРЕДСТВАМИ WINDOWS XP
Подключиться к своему коллеге в пределах офисной сети, организовав VPN-туннель средствами операционной системы Windows, проще простого. Такая возможность заложена даже в Windows 98, но, чтобы не отрываться от реальности, мы рассмотрим вариант с ОС Windows XP. Данный вид соединения в терминологии виртуальных частных сетей называется Client/Server VPN. Это способ защищенного соединения двух узлов одной корпоративной сети (именно узлов, а не сетей).

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

Итак, у нас есть две машины, между которыми мы хотим организовать туннель. Одна из них будет выступать в роли сервера, другая – в роли клиента. Первым делом требуется настроить сервер таким образом, чтобы он принимал входящие подключения. Для этого заходим в “Сетевое окружение” и запускаем “Мастер создания нового подключения”, в котором выбираем Set up an advanced connection > Accept incoming connections. Далее появится окно с устройствами, которые будут использоваться для подключения к данному узлу.

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

Здесь обычно приведен список всех пользователей, когда-либо работавших на данной машине, но также есть возможность создать новых в интерактивном режиме. При этом задается лишь реальное имя, пароль и логин. После решения административных вопросов встает вопрос об используемых протоколах на всем отрезке VPN-туннеля. Рекомендуется использовать проверенный в боях стек TCP/IP и не поддаваться на провокации с установкой клиента для сетей Netware и протоколов IPX/SPX. Таким образом, ничего нового здесь устанавливать не придется. Вот и все – мы и не заметили, как создали сервер VPN.

Теперь совершаем вояж к клиентской машине. Чтобы настроить VPN-клиента, требуется знать имя и пароль, которые разрешены сервером для данного соединения (мы их задавали при конфигурировании сервера VPN) и, собственно, IP-адрес компьютера или его имя в сети. Это прописывается в свойствах сетевого окружения.

Среди видов соединений нужно выбрать “Connect to the network at my workspace”, а затем отметить, что это будет подключение к виртуальной частной сети. После этого пролистываем вопросы “Мастера”, но не забываем отметить, что никакой номер для установления VPN-соединения набирать нам не нужно, так как используется сетевая карта, а не модем. Подробное руководство по конфигурированию клиента виртуальной частной сети под Windows XP можно найти на странице support.microsoft.com/default.aspx?kbid=305550&product=winxp.

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

REMOTE ACCESS VPN
Мы рассмотрели наиболее популярный для любого офиса вид VPN – клиент-серверный. Допустим, что вы скрыли от злоумышленника (ну и, конечно, от сетевого администратора тоже) секретную переписку. А как быть с работой вне офиса?

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

Рассмотрим вариант создания виртуальной частной сети типа Remote Access VPN, при котором пользователь может, не выходя из дома, работать с локальной сетью на работе через интернет по защищенному каналу. При этом сервером (или шлюзом) выступит компьютер с ОС Windows 2003 Server, один интерфейс которого “смотрит” в локальную сеть, а другой – в интернет с постоянным каналом на базе выделенной линии DSL.

Сервер должен иметь постоянный IP-адрес, чтобы подключающийся к нему пользователь всегда знал, где его искать. В среде Windows 2003 Server заходим в свойства сетевого окружения и выбираем Set up an advanced connection > Accept incoming connections. Собственно, особенной разницы от клиент-серверного варианта соединения VPN-узлов здесь мы не заметим. Единственное отличие в числе одновременных подключений, которых Windows 2003 Server может поддерживать практически неограниченное количество.

На стороне удаленного узла используем стандартный клиент VPN для Windows XP. Методами проверки подлинности на сервере выбираем MS CHAP и MS CHAP v2. А протокол канального уровня по умолчанию – PPTP, работающий поверх PPP. Будущего пользователя потребуется авторизовать на сервере VPN, придумав имя и пароль в соответствии с общепринятыми рекомендациями по безопасности (символы пароля в разных регистрах, использование цифр, знаков и т. д.).

Если подключение к сети VPN происходит через интернет, в который вы выходите по коммутируемому соединению через обычный модем, то в настройках клиента необходимо создать хотя бы одно подключение к провайдеру. После этого запускаем “Мастер создания сетевого подключения”, в котором опять нужно выбрать “Подключение к виртуальной частной сети через интернет”. Далее в настройках нужно добавить имя или IP-адрес шлюза VPN – речь идет о нашем сервере Windows 2003, на котором мы уже авторизованы стараниями администратора рабочей сети (в свойствах уже созданного подключения данный параметр редактируется).

После создания соединения заходим в его свойства и выбираем в выпадающем меню подключение, с помощью которого будем выходить в Сеть. На вкладке “Параметры” и “Безопасность” оставляем все по умолчанию, понимая, что для проверки подлинности будут использоваться протоколы MS CHAP и MS CHAP v2.

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

ПРОБЛЕМЫ
С ролью сервера VPN может прекрасно справляться Windows XP. Основным различием между операционными системами в данном случае является количество одновременно подключаемых пользователей. В Home Edition – 5, в Professional – 10, ну а в версии 2003 Server их число практически не ограничено. Использование серверной версии стоит массу денег, но хорошим выходом может стать, к примеру, установка дополнительной сетевой карты.

Такая хитрость позволит использовать в Windows XP Professional по 10 пользователей на каждый адаптер. Таким образом, на небольшую сеть должно хватить трех-четырех сетевых плат. Другой вариант – обман системы с помощью программы NTSwitch (www.3dnews.ru/documents/1143/ntswitch.zip). В результате мы обойдем лицензию, получив возможность установки серверных приложений на обычную ОС и сняв ограничение на 10 одновременно подключаемых пользователей. Эта утилита без проблем работает в среде NT и Windows 2000, а вот в XP наблюдаются сбои.

БЕЗОПАСНОСТЬ VPN
Теперь было бы интересно задаться вопросом – а насколько будет защищено соединение VPN от разного вида атак? Что касается самого трафика, который проходит по сети, то здесь все понятно – он шифруется, поэтому, применяя более или менее современные алгоритмы шифрования, вы можете не переживать за конфиденциальность передаваемой и получаемой информации. Дело в том, что средства построения VPN-сетей не являются полноценным инструментарием для обнаружения или блокировки атак.

К таким банальным методам вывода из строя на некоторое время VPN-сервера относится вид атак DoS (“отказ в обслуживании”). Кроме того, нередко авторизованные пользователи сами становятся виновниками распространения троянов – в этом случае нежелательный трафик пройдет через VPN-сервер и будет зашифрован наряду с полезной информацией. Так что не поленитесь установить антивирус и персональный брандмауэр, который и станет выполнять функции межсетевой защиты. Не стоит забывать и о своевременном обновлении операционной системы и прикладных программ, иначе уязвимые места Windows дадут злоумышленнику полный доступ к вашему серверу.

Виды VPN

Можно выделить четыре варианта построения виртуальной частной сети, которые используются по всему миру. Данная классификация предлагается компанией Check Point Technologies, которая владеет более 50% мирового рынка VPN-решений (Dataquest) и не без оснований считается законодателем мод в этой области.

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

– Remote Access VPN. Способ реализации защищенного соединения между корпоративной сетью (либо ее сегментом) и одиночным удаленным пользователем, который соединяется с VPN-шлюзом из дома или с помощью мобильных средств (ноутбука или сотового телефона). Особенность здесь заключается в том, что пользователь, как правило, не имеет статического IP-адреса и подключается к защищенному ресурсу с помощью программного обеспечения, реализующего функции VPN.

– Client/Server VPN. Способ защищенного соединения двух ПК одной корпоративной сети. Самый дешевый вариант, поскольку нет необходимости платить за аренду коммуникаций.

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

Производительность

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

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

Замедлению работы способствует и частая смена криптографического ключа. В общем случае алгоритм шифрования, использующий ключ не менее 128 бит, может работать в течение достаточно длительного промежутка времени. К таким алгоритмам относится, например, Triple DES.

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