Служба Exchange 2013 FrontEnd Transport

FrontEnd Transport. Часть 1

www.microsoft.com

Статья Служба Exchange 2013 FrontEnd Transport является первой в цикле статей, повествующих о принципе работы служб транспорта Exchange Server 2013. В этой статье речь пойдет о Транспортной службе переднего плана на серверах клиентского доступа.

В 2013 версии сервера Exchange произошли достаточно сильные изменения в архитектуре и теперь существует всего две основные роли — сервер почтовых ящиков (Mailbox Server или сокращенно MBX) и сервер клиентского доступа (Client Access Server — CAS). Обособленно стоит роль пограничного транспортного сервера (Edge Transport). Служба Exchange 2013 FrontEnd Transport располагается на серверах CAS и выполняет функции прокси.

Это первая статья из серии, посвященной принципам работы служб транспортного конвейера Exchange 2013, а вот полный список:

А также статьи по управлению логированием этих служб:

Не забывайте об официальной документации.


Найти больше информации по настройке и администрированию Exchange 2013 на моем блоге вы сможете в основной статье тематики — Exchange 2013 — Установка, настройка, администрирование.


Exchange 2013 FrontEnd Transport

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

  • Транспортная служба переднего плана на серверах клиентского доступа (Отображаемое имя — Microsoft Exchange FrontEnd Transport, сокращенное — MSExchangeFrontEndTransport);
  • Транспортная служба на серверах почтовых ящиков (Отображаемое имя — Microsoft Exchange Transport, сокращенное — MSExchangeTransport);
  • Транспортная служба почтовых ящиков на серверах почтовых ящиков (Реально включает в себя две службы — Microsoft Exchange Mailbox Transport Delivery и Microsoft Exchange Mailbox Transport Submission, сокращенные имена — MSExchangeDelivery и MSExchangeSubmission соответственно);
  • Транспортная служба на пограничных транспортных серверах (Отображаемое имя — Microsoft Exchange Transport, сокращенное — MSExchangeTransport).

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

Транспортный конвейер

В общем плане транспортный конвейер выглядит следующим образом 1:

trancport conveyor

В контексте данной статьи нас интересует именно верхняя часть иллюстрации, на которой изображен Сервер клиентского доступа:

FrontEnd Transport. Часть 1 - служба FrontEnd Transport

В этой схеме кроется один нюанс. Дело в том, что по умолчанию серверы MBX могут самостоятельно отправлять почту наружу через порт 25 SMTP. Чтобы соединитель отправки всегда отправлял почту в интернет через серверы клиентского доступа, нужно в явном виде установить у этого соединителя параметр FrontendProxyEnabled в значение $true (или в EAC поставить галочку на Прокси через сервер клиентского доступа в свойствах соединителя отправки). Именно от такой конфигурации я и буду отталкиваться в дальнейшем.

Ниже я постараюсь внести некоторые ясности в принцип работы Транспортной службы переднего плана серверов Exchange 2013 с ролью CAS.

Принцип работы

FrontEnd Transport (в терминологии Microsoft — Служба транспорта переднего плана) не занимается обработкой содержимого сообщений, не использует очередь сообщений и не взаимодействует с транспортной службой почтовых ящиков. Другими словами, серверы Exchange 2013 только с ролью CAS не хранят у себя данные ни на постоянной основе (используя БД), ни на временной (в очереди обработки сообщений).

Тем не менее, служба транспорта переднего плана имеет собственных агентов транспорта (см. рисунок — Агенты протокола). Агенты позволяют расширять функционал почтового сервера Exchange путем добавления в логику обработки сообщений собственный код. Вызов агентов происходит при возникновении событий SMTP. Эти события, в свою очередь, генерируются на той или иной стадии обработки сообщений по мере их прохождения через транспортный конвейер. Стоит отметить, что большинство присутствующих по умолчанию агентов скрыты или их настройками управлять нельзя. Функционал агентов на CAS-серверах достаточно сильно ограничен 2 и в полной мере присутствует только у ролей MBX и Edge.

Соединители отправки и получения

На схеме (см. выше) Транспортной службы переднего плана сервера клиентского доступа обозначим на каждом входящем и исходящем соединении соответствующий порт, получив в итоге следующее представление:

FrontEnd Transport. Часть 1 - используемые порты

За прослушивание подключений каждого порта, обозначенного на схеме, отвечает отдельный соединитель получения, которых по умолчанию при установке роли CAS создается три штуки:

FrontEnd Transport. Часть 1 - соединители по умолчанию

Помимо видимых и доступных администратору соединителей, существуют также скрытые системные соединители отправки:

  • Inbound Proxy Internal Send Connector (SMTP 25/2525 в Транспортную службу на серверах почтовых ящиков)
  • Client Proxy Send Connector (SMTP, принятые на 587 порту в Транспортную службу на серверах почтовых ящиков на порт 465)

Кстати, первый соединитель в русскоязычной версии Exchange Server 2013 будет иметь имя Внутренний соединитель отправки для вход. подкл. прокси-сервера, а второй — Соединитель отправки прокси клиента. Это на всякий случай, чтобы не прийти в ступор при первой встрече с этими коннекторами.

Также нужно не забыть про соединители отправки, которые необходимо создавать вручную после установки Exchange 2013. Без этих соединителей (которых минимум нужен один), вы не сможете обмениваться почтой с внешними получателями, при этом внутри вашей организации почта будет ходить нормально (подробнее о соединителях отправки читайте в статье Соединители отправки Exchange 2013).

В итоге получаем следующую полную таблицу:

Название Назначение Порт Направление
Default Frontend <Server Name> Прием 25 От внешних серверов
Outbound Proxy Frontend <Server Name> Прием 717 От серверов MBX
Client Frontend <Server Name> Прием 587 От внешних клиентов, защищенное подключение
Client Proxy Send Connector Отправка 465 На серверы MBX
Inbound Proxy Internal Send Connector Отправка 25/2525 На серверы MBX. Только подключения, принятые на 587 порту
Созданный вручную соединитель отправки Отправка 25 На внешние серверы

Перенесем названия соединителей на схему Транспортной службы переднего плана:

FrontEnd Transport. Часть 1 - соединители отправки и получения

Порты 465, 717, 25/2525 используются даже в том случае, если роли CAS и MBX установлены на одном и том же сервере.

Надеюсь после моей статьи у вас не будет возникать вопросов зачем вообще Exchange использует столько соединителей, да ещё и для каждой роли. А ведь я ничего не упоминал про соединители, которые создаются автоматически при создании подписки EdgeSync для пограничных транспортных серверов (Edge), но это уже совсем другая история.

Кстати, про путь, который проделывает поток обработки почты на разных топологиях Exchange, написано в моей недавней статье — Поток обработки почты при разной топологии Exchange 2013.

comments powered by HyperComments