Как совместить RD Gateway и Outlook Anywhere

2012-03-22, 18:15 / Argon

Представим ситуацию:

  • Имеется один публичный SSL-сертификат на имя autodiscover.lab.argon.pro без списка альтернативных имён (SAN)
  • Имеется только один свободный публичный IP-адрес
  • Стоит задача при данных ограничениях опубликовать в интернете Remote Desktop Gateway и Exchange 2010 Outlook Anywhere

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

Имея в своём арсенале TMG, задача повесить несколько сервисов на один IP адрес с одним публичным именем в SSL-сертификате решается достаточно просто: один виртуальный каталог одного сервиса направляем на предоставляющий его сервер, другой каталог, соответственно, на другой сервер. Но в случае с RD Gateway и Outlook Anywhere есть загвоздка: оба сервиса используют один и тот же виртуальный каталог RPC. Это именно тот случай, что даже TMG нам помочь не может.

Однако, выход всё же есть… При данных ограничениях роль Remote Desktop Gateway можно установить на один сервер с Exchange 2010 CAS. В этом случае TMG будет пересылать запросы на один и тот же каталог RPC. При этом вероятно, что RDG без дополнительного допиливания будет не работать, а бесконечно спрашивать учетные данные пользователя.

Чтобы починить RDG, нужно в консоли IIS включить Windows Authentication для каталога RPC.

Но этого не достаточно, так как службы Exchange переодически возвращают директорию RPC к первоначальной конфигурации. Поэтому для стабильного приведения Remote Desktop Gateway в чувства требуется выполнить следующую команду из Exchange Management Shell:

Set-OutlookAnywhere -Identity "SERVER-NAME\Rpc (Default Web Site)" -IISAuthenticationMethods Basic,NTLM

Более подробоное описание команды Set-OutlookAnywhere в TechNet



12 комментариев

Zuz666
# Комментарий от 2012-03-24, 01:53

А два правила публикации на TMG с одним листнером с разными Public Name? По идее должно работать.

Zuz666
# Комментарий от 2012-03-24, 02:12

Посмотрел ClientHelloExtension: Server Name(0x0000) как минимум клиентом RDP устанавливается, да и OAW тоже должен это делать они schanell один и тот же для TLS юзают.

Argon
# Комментарий от 2012-03-24, 02:28

А два правила публикации на TMG с одним листнером с разными Public Name? По идее должно работать.

Должно и работает. Но в начальных ограничениях я написал, что у нас только сертификат с одиночным common name без SAN. Подсказка, это бесплатный StartSSL ;)

Zuz666
# Комментарий от 2012-03-24, 12:42

У StartSSL, насколько помню, в вашем случае в SAN сертификата должно быть два имени:
autodiscover.lab.argon.pro,
lab.argon.pro (второе оно само добавляет, даже если не просишь).

Argon
# Комментарий от 2012-03-24, 16:51

Действительно, имени два:

autodiscover.lab.argon.pro
argon.pro

Второе мне использовать не получиться по причине хостинга этого блога не в моей среде.

Vitaly
# Комментарий от 2012-04-01, 15:44

Есть хорошая новость — в windows server 8 появилась возможность менять порт гейтвея.

Stanky
# Комментарий от 2012-04-25, 18:53

А не проще ли для Outlook Anywhere выбрать NTLM, вместо Basic — и пароль Outlook запрашивать не будет и RDG будет функционаровать ;) ?

Argon
# Комментарий от 2012-04-27, 12:03

Тоже вариант! Начиная с Outlook 2010 пароль и при Basic не спрашивают.

Вот кстати более подробно про разницу между NTLM и Basic для Outlook Anywhere.

Stanky
# Комментарий от 2012-04-28, 00:12

Все эти «страшилки» про Firewall’ы я читал ещё во времена Exchange 2003, но в своей практике так ни разу с ними и не столкнулся :) .

А про Outlook 2010 не знал — спасибо :) .

Sattva
# Комментарий от 2013-02-10, 23:50

А два правила публикации на TMG с одним листнером с разными Public Name? По идее должно работать. — как это реализовать??? Можно ссылку на документацию!!

Argon
# Комментарий от 2013-02-19, 00:55

Sattva, очень просто, создаешь несколько правил публикации. Это будет работать для HTTP без ограничений, но вот для HTTPS только для тех hostname-ов, которые есть в Subject Name сертификата.

Случай из практики – 10 | RDP dog
# Уведомление от 2013-04-18, 13:35

[…] при сосуществовании двух ролей описаны в этой и этой заметках. Основные проблемы которые могут возникнуть- […]

Добавить комментарий