Механизм Autodiscover достаточно прост и призван обеспечивать беспрепятственное получение настроек автоконфигурации клиентами Exchange Server. Тем не менее, встречаются некоторые моменты, которые вводят в заблуждение системных администраторов.
В этой статье я сделаю акцент на наиболее частых вопросах и проблемах, которые мне встретились на форумах Technet.
Найти больше информации по настройке и администрированию Exchange 2013 на моем блоге вы сможете в основной статье тематики – Exchange 2013 — Установка, настройка, администрирование.
Содержание
Виртуальный каталог Autodiscover
Задача сервиса Autodiscover – минимизировать действия пользователя по настройке почтовых клиентов. Предоставляя понятный и удобный алгоритм автоматической конфигурации, Exchange Server ограничивает объем необходимых данных вводом всего лишь адреса электронной почты и пароля.
Клиент обращается к серверу, чтобы получить следующие данные 1:
- краткое имя пользователя;
- индивидуальная настройка каждого внутреннего или внешнего подключения;
- местоположение сервера почтовых ящиков пользователя;
- URL-адреса для различных функций Outlook, управляющие компонентов, таких как сведения о доступности, единой системы обмена сообщениями и автономной адресной книги;
- параметры сервера Мобильный Outlook.
Тем не менее, вопросы чаще всего возникают в том, каким образом клиент понимает к какому серверу подключаться 2. Множество настроек, часть из которых тянутся с предыдущих версий Exchange, не способствуют лучшему пониманию.
Виртуальный каталог Autodiscover по умолчанию имеет название Autodiscover (Default Web Site). Через EAC нам доступен минимум параметров, которые для него можно поменять. Во многих случаях это и не требуется. Однако есть мнение, что для него нужно устанавливать InternalUrl и ExternalUrl, но на самом деле это не так. Ниже разберемся почему.
Клиент НЕ присоединен к домену
В качестве клиента будет рассматриваться всем знакомый Outlook. Допустим вы уже ввели свой email-адрес и пароль. На основе домена, взятого из почтового адреса, клиент генерирует список возможных точек подключения.
Точки подключения – это URL-адреса, обратившись к которым, как полагает клиент, он сможет получить необходимые ему настройки 3 (первая, которая ответит):
- https://<smtp_domain>/Autodiscover/Autodiscover.xml
- https://autodiscover.<smtp_domain>/Autodiscover/Autodiscover.xml
Если ни одна из них не ответит, клиент сделает последние попытки использовать другие методы:
- HTTP GET request to receive a redirect for http://autodiscover.<smtp_domain>/Autodiscover/Autodiscover.xml
- SRV record query for _autodiscover._tcp.<smtp_domain>
Поскольку допустимые варианты URL жестко зашиты в логику работы клиента, мы приходим к одному важному выводу. А именно: URL-адреса, которые вы вписываете в параметры InternalUrl и ExternalUrl виртуального каталога автообнаружения не нужны, потому что не используются. Видимо именно поэтому их убрали из доступных настроек в ECP:
В то время как у других виртуальных каталогов они доступны для изменения. На устаревший функционал этих настроек Autodiscover также прямо намекает справочная страница командлета Set-AutodiscoverVirtualDirectory 4:
This parameter is available or functional only in Exchange Server 2010.
С вашей стороны нужно позаботиться о том, чтобы как минимум на одной точке подключения клиент мог получить данные автоконфигурации. Также рекомендуемым сценарием является настройка Split DNS (подробнее читайте в статье Exchange Server и Split DNS), чтобы клиенты внутри и снаружи сети подключались по одним и тем же именам.
Не забывайте, что Autodiscover работает по протоколу https и ему необходим валидный сертификат, который должен содержать имя активной точки подключения.
Для клиентов, которые не введены в домен, порядок подключения одинаков как при нахождении в локальной сети предприятия, так и снаружи. Для доменных клиентов ситуация обстоит намного интереснее.
Клиент присоединен к домену
Для доменных клиентов внутри периметра локальной сети предприятия предпочтительным вариантом является поиск Service Connection Point (SCP), которая публикуется в Active Directory. Найти SCP вы можете в редакторе adsiedit.msc (подключитесь к Configuration Naming Context). Полный путь до объекта будет примерно следующим:
1 2 3 4 5 6 7 8 9 10 11 |
CN=Configuration,DC=domain,DC=tld - CN=Services - CN=Microsoft Exchange - CN=organization-name - CN=Administrative Groups - CN=Exchange Administrative Group (FYDIBOHF23SPDLT) - CN=Servers - CN=server-name - CN=Protocols - CN=Autodiscover - CN=server-name |
А вот и сам объект:
Настраивать SCP необходимо для каждого сервера Exchange с помощью командлета Set-ClientAccessService 5 и его параметра AutoDiscoverServiceInternalUri 6:
1 |
Set-ClientAccessService -Identity 'EXCH01' -AutoDiscoverServiceInternalUri 'https://mail.bq-srv.ru/Autodiscover/Autodiscover.xml' |
Заметьте, что виртуальный каталог Autodiscover в случае с SCP не принимает никакого участия – необходимые URL устанавливаются на уровне роли CAS. Сам алгоритм Autodiscover выглядит следующим образом 7:
Таким образом, легкий на первый взгляд процесс автонастройки клиентов представляет из себя достаточно запутанный механизм из правил, условий и исключений.
Рекомендации по настройке
Рассмотрев выше тонкости настройки механизма Autodiscover, можно сделать ряд важных выводов и рекомендаций относительно конфигурирования серверов Exchange:
- Начинайте настройку Autodiscover с установки параметра AutoDiscoverServiceInternalUri для каждого сервера командлетом Set-ClientAccessService;
- В идеальном варианте адрес AutoDiscoverServiceInternalUri должен вести на балансировщик нагрузки. Тем не менее, вполне допустимо использовать обычный DNS RR. Допускается также, чтобы каждый сервер Exchange имел свой собственный уникальный AutoDiscoverServiceInternalUri. В этом случае все будет работать, ведь клиентам внутри домена будет выдан весь список SCP с принадлежностью к сайтам и клиент сам выберет оптимальный вариант, не беспокойтесь.
- Если клиент находится вне сети или он не принадлежит к домену, приоритетом номер два является настройка точек подключения.
- Помните, что они имеют фиксированный адрес, который клиент генерирует на основе вашего smtp-домена из адреса электронной почты;
- Если вы имеете дело с большой организацией и множеством основных smtp-доменов, то вашим вариантом скорее всего будет настройка редиректов или публикация SRV-записей у DNS-провайдера и в локальной сети;
- Обязательно позаботьтесь о валидном сертификате, который будет содержать все необходимые имена. Вероятнее всего вы будете иметь дело с san- или wildcard- сертификатами (о сертификатах читайте в моих статьях);
- Ну и конечно оставьте в покое InternalUrl и ExternalUrl виртуального каталога Autodiscover, которые сразу после установки Exchange идут пустыми.
На этом все. Успехов вам в администрировании!
В статье я попытался рассказать о достаточно известной и освещенной теме, но подойдя к ней немного с другой стороны. Не стесняйтесь поправлять меня, если вдруг я что-то умолчал или где-то дезинформировал.