Шлюз Microsoft Forefront Unified Access Gateway 2010 устраняет многие недостатки DirectAccess — нового решения корпорации для поддержания постоянного соединения с удаленными компьютерами. Он предоставляет столь необходимые средства измерения производительности, обеспечивает масштабирование, глобальное управление и обратную совместимость с прежними версиями серверных и клиентских ОС. Всё это позволяет реализовать DirectAccess не только в чисто пилотных проектах, но и в рабочих сетях.
Я тестировал DirectAccess в октябре прошлого года и пришел к выводу, что продукт (он встроен в клиентские системы Windows 7 Enterprise и Ultimate, а также в Windows Server 2008 R2) пригоден для интересных и эффективных пилотных проектов. Однако недостаточная масштабируемость, отсутствие глобального управления и обратной совместимости с прежними версиями ОС как на стороне клиента, так и на стороне сервера будут сильно ограничивать его применение в большинстве реальных доменов и сетей.
Здесь на сцену выступил UAG, который решил все эти проблемы. Установив UAG на каждом сервере DirectAccess в сети, администраторы смогут объединить их в массив для повышения производительности и упрощения управления.
В UAG используются NAT64 и DNS64, которые позволяют DirectAccess подключать в интранете серверы и приложения только по протоколу IPv4, а поддержка VPN на базе SSL (Secure Sockets Layer) обеспечивает доступ к удаленным клиентским машинам, на которых установлены старые операционные системы, и к тем, которые не входят в домен. В данном случае во время тестирования я сосредоточился на усовершенствовании DirectAccess с помощью UAG и не занимался реализацией SSL VPN в UAG.
Шлюз Forefront UAG 2010, поставки которого начались в декабре, лицензируется в рамках программы оптового лицензирования (volume licensing) Microsoft и требует приобретения лицензий на каждый сервер, а также клиентских лицензий (Client Access Licenses, CALs). Лицензия на сервер Forefront UAG стоит 6341 долл. (в эту цену не входит стоимость лицензии, необходимой для работы сервера ОС Windows Server 2008 R2), а CAL (эти лицензии можно приобретать на каждого пользователя или на каждое устройство) обойдется в 15 долл. Крупным клиентам, покупающим свыше 10 тыс. CAL, предоставляется скидка.
Использование IPv6
Сам DirectAccess использует протокол IPv6 для маршрутизации трафика, поступающего с удаленных клиентских компьютеров, работающих под управлением Windows 7 через Интернет на тот сервер DirectAccess, который перенаправляет трафик на сервер защищенной интранет. Поддержка IPv6 в Интернете является неполной, поэтому DirectAccess использует технологии преобразования, такие как 6to4 и Teredo, для получения доступа в Интернет, где применяется IPv4, или в сети, созданные на основе трансляции адресов (Network Address Translation, NAT). Но если интранет-сервер не поддерживает оба IP-протокола, DirectAccess не может установить с ним соединение.
Forefront UAG 2010 решает данную проблему, используя на периметре сети механизмы преобразования пакетов NAT64 и DNS64. Когда удаленный клиент пытается получить доступ к интранет-серверу, UAG направляет серверу DNS два запроса на поиск доменных имен: один на поиск записи в формате IPv4 A, другой — в формате IPv6 AAAA. Если на DNS-сервере имеются обе записи, он выдаст UAG запись AAAA. Тогда будет использоваться стандартный для DirectAccess способ связи. Если же приложение в отличие от сервера не поддерживает IPv6, администраторам придется во избежание осложнений отключить поддержку IPv6 на сервере или удалить его адрес в формате AAAA с DNS-сервера.
Если UAG получает только запись A, он предполагает, что сервер использует лишь IPv4, и поэтому необходимо применять NAT64. NAT64 добавляет префикс к адресу сервера, применяющего протокол IPv4, и выдает запросившему его клиенту соответствующую строку (префикс плюс адрес, предусмотренный в IPv4). Когда клиент начинает обмениваться данными с сервером, UAG отбрасывает префикс и формирует новый пакет в соответствии с требованиями IPv4 для отправки серверу. Когда сервер отвечает через тот же шлюз UAG, последний воссоздает пакет с префиксом для IPv6 и направляет его клиенту.
Чтобы проверить возможности UAG по установлению связи с унаследованными приложениями и серверами, я включил в свою тестовую сеть сервер под управлением Windows Server 2003, на котором установил Exchange 2003. Хотя Windows Server 2003 может использовать IPv6, поддержка обоих IP-протоколов реализована в нем таким образом, что с DirectAccess он не работает.
С помощью UAG удаленный клиент смог получить доступ к Exchange так, словно его компьютер был напрямую подключен к интранет. Из Outlook я сумел подключиться к Outlook Web Access и к Exchange, не меняя настроек на клиентской машине.
Кроме того, я протестировал работу UAG с DirectAccess при использовании веб-приложения, созданного не Microsoft, а другой компанией. Я включил в интранет старый аппаратный брандмауэр, не поддерживающий IPv6, и добавил соответствующую запись формата A на DNS-сервере. И вновь мне удалось с помощью UAG DirectAccess благополучно получить доступ к управляющей веб-консоли устройства.
Для тестирования я установил UAG DirectAccess между центром и периметром сети (end-to-edge) так, чтобы шифрование и аутентификация осуществлялись сервером UAG на внешней границе сети.
Балансировка нагрузки
Forefront UAG 2010 позволяет администраторам масштабировать управление и производительность серверов DirectAccess, иначе каждый из них требует индивидуальной настройки. UAG предоставляет администраторам возможность назначить один сервер UAG DirectAccess главным в массиве, фактически заменяя интегрированные инструменты управления DirectAccess встроенными средствами UAG. В результате политика, заданная на главном сервере, будет автоматически распространена на все включенные в массив серверы.
Добавив второй сервер UAG, я стал использовать имеющуюся в Windows технологию балансировки сетевой нагрузки Network Load Balancing. Мне необходимо было определить виртуальные IP-адреса (один в интранете и два в Интернете), по которым можно было бы обращаться к кластеру, создать сертификат для VIP и позаботиться об экспорте этого сертификата, чтобы он хранился на каждом сервере UAG.
Имея массив из двух серверов UAG, я попытался подключить удаленный клиент к установленному в интранете серверу Exchange. Ознакомившись с сертификатом клиентской машины, я выяснил, какой из входящих в массив серверов UAG устанавливает соединение, и отключил виртуальную машину этого сервера, имитировав его выход из строя.
Через минуту соединение между удаленным клиентом и сервером Exchange было восстановлено вторым сервером UAG. Задержка была вызвана 60-секундным периодом ожидания перед тем как Windows разорвет сеанс IP Security. Такая задержка предусмотрена для того, чтобы избежать избыточного согласования с клиентами сессий по протоколу IPSec при низком качестве связи. Но наличие периода ожидания может привести к минутному отсутствию соединения с удаленным компьютером, что кого-то заставит обратиться в службу технической поддержки.
Хотя минутный период ожидания IPSec нельзя изменить, представители Microsoft сообщили, что имеются программные средства, позволяющие обойти проблему, если разорвать соединение со стороны клиента. По их словам, коль скоро такая задержка будет создавать для клиента трудности, Microsoft выпустит соответствующую заплатку.