Настройка exchange 2016 edge
Мы добавили сервера Exchange 2016 в нашу организацию. Теперь необходимо выполнить их настройку. Первоначальная настройка Exchange 2016 включает в себя следующие шаги:
- Импорт и привязка сертификатов.
- Настройка служб автообнаружения.
- Настройка виртуальных директорий.
- Конфигурирование Outlook Anywhere.
- Переименование и перемещение почтовых баз.
- Создание группы высокой доступности.
Также мы выполним настройку группы высокой доступности из наших серверов MBX03 и MBX04, чтобы мы могли выполнять миграцию почтовых ящиков уже на отказоустойчивое решение.
Импорт и привязка сертификатов
Вариант с использованием самоподписанного сертификата мы рассматривать не будем. В остальных случаях у вас будет два варианта:
- Купить коммерческий сертификат на год или более.
- Выпустить бесплатный сертификат от Let-s Encrypt на 3 месяца.
Поскольку мы уже выпускали бесплатный сертификат для нашего сервера Exchange 2010, то мы будем использовать его.
Предварительно либо экспортируйте этот сертификат с одного из серверов Exchange 2010, либо найдите исходный PFX файл с открытым и закрытым ключом.
Импорт сертификата на сервера клиентского доступа
Для импорта сертификата на сервера клиентского доступа выполните следующие шаги:
1. Запустить MMC консоль управления сертификатами для локального компьютера на первом сервер Exchange 2016:
2. В контекстом меню персонального контейнера выбрать пункт для импорта сертификата:
3. Выполнить все шаги мастера импорта сертификатов.
4. Сертификат должен отобразиться в локальном хранилище сертификатов:
5. Выполнить импорт сертификата на все сервера клиентского доступа Exchange.
Привязка сертификата к сервисам Exchange
Импорт сертификата – это лишь половина дела. Далее их нужно указать – какие сервисы будут использовать наш сертификат:
1. Запустим Exchange Management Shell на первом сервере Exchange 2016 и посмотрим на список наших сертификатов:
2. Находим необходимый нам сертификат и привязываем его ко всем сервисам:
3. Перезапускаем сервер IIS:
4. Выполняем аналогичные действия на втором сервере Exchange 2016.
Настройка службы автообнаружения
Теперь посмотрим, как выглядят настройки служб автообнаружения после добавления серверов Exchange 2016 в нашу организацию:
Скорректируем имена службы автообнаружения:
Проверим теперь адреса служб автообнаружения для всех наших серверов Exchange:
Теперь все имена настроены корректно, и мы перейдем к настройке виртуальных директорий.
Настройка виртуальных директорий
В Exchange 2016 у нас присутствуют следующие виртуальные директории:
У каждой из виртуальных директория (за исключением виртуальной службы автообнаружения) в настройках необходимо указать URL адрес, который будут использовать внутренние клиенты и URL адрес, который будут использовать внешние клиенты. Этот URL адрес, может быть одинаковый как для внутренних клиентов, так и для внешних клиентов. В нашем случае будет именно так.
Выполним настройку виртуальной директории для ActiveSync:
Выполним настройку виртуальной директории для MAPI:
Настроим виртуальную директорию ECP:
Настроим виртуальную директорию OWA:
Затем настроим виртуальную директорию автономной адресной книги:
Нам остается настроить виртуальную директорию для PowerShell:
Последним шагом конфигурируем виртуальную директорию веб-сервисов:
Настройка виртуальных директорий для серверов Exchange 2016 завершена.
Конфигурирование Outlook Anywhere
Первоначальная настройка Exchange 2016 также включает в себя настройку пространства имен для Outlook Anywehere (OA). OA позволяет клиентам Outlook подключаться к своим почтовым ящикам за пределами локальной сети (без использования VPN).
Проверим текущие настройки AO для первого сервера Exchange 2016:
Настройка Outlook Anywhere завершена.
Переименование и перемещение баз данных
Перед настройкой Database Availability Group нам нужно будет выполнить некоторые подготовительные работы:
- Дать более понятное имя почтовым базам.
- Переместить файлы почтовых баз на отдельный выделенный диск.
Сейчас у нас по одной на каждом сервере Exchange 2016. Посмотреть их мы можем следующим командлетом:
Переименование почтовой базы состоит из двух шагов: переименование объекта базы данных в конфигурации и переименование физических файлов на системе хранения.
Сначала переименуем наши почтовые базы в конфигурации:
Однако, физические файлы базы все еще называются старым именем, которое было присвоено мастером установки:
Мы совместим процесс переименование физических файлов почтовой базы и процесс переноса физических файлов почтовой базы на отдельный выделенный диск. В нашем случае необходимо выполнить следующий командлет на первом сервере Exchange 2016 (MBX03):
Нас предупредят о том, что на время переноса почтовая база будет недоступна:
Теперь наша почтовая база расположена на нужном нам диске и наименована так, как мы и просили:
Выполним аналогичный командлет на втором сервере Exchange 2016 (MBX04):
Переименование и перемещение почтовых баз завершено.
Создание группы высокой доступности
Последним подготовительным шагом для наших серверов Exchange 2016 станет процесс создания группы высокой доступности (Database Availability Group – DAG).
Высокоуровнево процесс создания группы высокой доступности состоит из следующим шагов:
- Создание группы высокой доступности в конфигурации.
- Добавление почтовых серверов в группу высокой доступности.
- Настройка дополнительных копий почтовых баз.
Database Availability Group в основе своей использует Windows Server Failover Clustering. Поскольку наши сервера версии Windows Server 2012, то нам будет достаточно реакции Standard. Для Windows Server 2016 также будет достаточно редакции Standard.
Важный момент – поскольку у нас всего два почтовых сервера, то кворум они собрать не смогут и им нужен сервер свидетель. Поскольку размещать свидетеля на контроллере домена далеко не самая хорошая практика (даже в тестовой среде), то мы подготовим отдельный сервер – SRV01.
Более подробно про кворумы можно почитать в документации на сайте Microsoft.
Подготовка сервера свидетеля
Наш новый сервер будет рядовым сервером в домене. Назовем его SRV01. Операционная система – Windows Server 2012 R2.
С сервером SRV01 нам необходимо выполнить следующие действия:
1. Установить и выполнить первоначальную настройку Windows Server 2012 R2.
2. Выполнить настройку IP-адресации (10.10.10.164).
3. Установить все обновления для ОС.
5. Добавить группу Active Directory “Exchange Trusted Subsystem” в группу локальных администраторов.
Создание группы высокой доступности в конфигурации
Первый шаг создания DAG на сервере Exchange 2016 – создание объекта группы высокой доступности в конфигурации Exchange. Создадим группу высокой доступности:
Если при создании группы высокой доступности Exchange будет ругаться на то, что он не может создать директорию на сервере свидетеле, как показано ниже:
В таком случае вам необходимо либо отключить брандмауэр на сервере свидетеле, либо включить следующие правила брандмауэра:
Добавление почтовых серверов в группу высокой доступности
После того, как мы создали группу высокой доступности необходимо добавить в неё оба наших почтовых сервера.
Добавим первый сервер:
В процессе добавления почтового сервера в группу высокой доступности будут установлены все необходимые дополнительные компоненты, в т.ч. Windows Server Failover Clustering.
Теперь добавим в группу высокой доступности второй почтовый сервер:
Посмотрим теперь на нашу группу высокой доступности:
Мы видим, что оба наших сервера представлены в колонке “Member Server”, т.е. оба сервера были успешно добавлены в группу высокой доступности.
Настройка дополнительных копий почтовых баз
Мы создали группу высокой доступности, добавили в неё оба почтовых сервера, но это еще не обеспечивает нам никакой защиты наших почтовых баз. Чтобы наши почтовые базы были доступны в случае потери почтового сервера, на котором они расположены необходимо настроить дополнительные копии почтовых баз. Займемся этим.
Основная суть в том, чтобы, например, для почтовой базы DB03, которая расположена на сервере MBX03, создать дополнительную копию на сервере MBX04. В случае выхода из строя сервера MBX03, почтовая база DB03 будет автоматически активирована на сервере MBX04. Аналогичное справедливо и для почтовой базы DB04 на сервере MBX04.
Создадим дополнительную копию почтовой базы DB03 на сервере MBX04. Выполним следующий командлет:
Теперь создадим дополнительную копию почтовой базы DB04 на сервере MBX03. Выполним следующий командлет:
Первоначальная настройка Exchange 2016 Database Availability Group завершена, но еще давайте посмотрим в конфигурацию дополнительных копий баз данных:
Мы видим, что для почтовой базы DB03 создано две копии:
- На сервере MBX03. Это основная копию и её статус “Mounted”, т.е. она смонтирована на сервере MBX03, т.к. в соответствующей колонке “Status” для сервера MBX03 указано значение “Mounted”.
- На сервере MBX04. Это дополнительная копия, т.к. в соответствующей колонке “Status” для сервера MBX04 указано значение “Healthy”. В случае непредвиденной аварии сервер MBX04 готов подхватить базу.
Нулевые значения в колонках “Copy Queue Length” и “Replay Queue Length” говорят о том, что почтовая база успешно реплицируется между серверами MBX03 и MBX04.
Настройка группы высокой доступности завершена.
Заключение
Первоначальная настройка Exchange 2016 завершена. Мы импортировали и привязали сертификаты, настроили виртуальные директории. Дополнительно мы сконфигурировали группу высокой доступности для отказоустойчивое работы наших новых почтовых баз.
Служба Front End Transport service
Для чего используется данный коннектор: если есть клиенты, использующие POP3 или IMAP для получения почты, то для отправки почты им нужно использовать протокол SMTP, поэтому, при наличии в компании клиентов POP3, клиенты будут устанавливать со службой Frontend Transport Service соединение по SMTP по 587 порту. Это как раз и есть SMTP с шифрованием. Именно этот коннектор слушает данный порт.
Коннектор Outbound Proxy Frontend <ServerName>
Вкладка Scoping: видим что данный коннектор слушает 717 порт.
После того как Frontend Transport Service примет коннектором приёма письмо, он передаст это письмо в службу Transport Service. Это одна из основных служб транспорта.
Служба Transport Service.
Microsoft Exchange Transport (MSExchangeTransport)
Данная служба отвечает за то, чтобы принять письмо, обработать его (применить всевозможные транспортные правила), понять кто является получателем данного письма и дальше смаршрутизировать это письмо на другой сервер. Если получатель письма находится на этом же сервере, служба Transport Service по SMTP передаст письмо на службу Mailbox Transport Service и уже эта служба положит письмо в почтовый ящик.
Если получатель находится на другом сервере, то Transport Service по SMTP передаст это письмо на Transport Service другого сервера.
Прежде всего у службы Transport Service есть два коннектора приёма (хотя в ecp их не переименовали и оно там относятся к роли HubTransport, находятся коннекторы там же, где и коннекторы Frontend Transport Service)
Коннектор Default <ServerName>
На вкладке Scoping видим что данный коннектор слушает порт 2525. Коннектор используется для получения почты от службы Frontend Transport Service. Когда Frontend Transport Service получит письмо из интернета, он будет передавать его в службу Transport Service, и вот здесь будет использоваться приём по порту 2525. По этому же порту он будет принимать почту с других Exchange серверов при сценариях внутренней маршрутизации почты. Этот коннектор необходим для сценариев, когда почта идёт из интернета, либо когда почта идёт с других серверов Exchange внутри организации.
Остальные настройки, в целом, аналогичный коннектору Default Frontend <ServerName>
Служба Transport Service принимает письмо, выполняет функции антиспама (если они есть), применяет транспортные агенты, транспортные правила и решает, куда дальше пересылать письмо, в Mailbox Transport service или на другой сервер.
Служба Mailbox Transport Service
Что происходит если Mailbox Transport service не доступен по какой-либо причине: письмо зависнет в очереди Delivery queues и будет ждать пока получатель станет доступен.
Просмотреть содержимое очереди можно инструментом Queue Viewer, который находится в Exchange Toolbox.
Просмотрщик очередей для каждого сервера индивидуальный.
Внимание:
Для маршрутизации отправки писем внутри компании, из скольких бы серверов она не состояла, коннекторы отправки создавать не нужно.
Специальные коннекторы для маршрутизации почты внутри компании создаются автоматически! Но они не видны.
Для отправки почты в другие компании (внешним получателям) необходимо создать коннекторы отправки. По умолчанию они не создаются.
Коннекторы отправки:
Галка Scoped send connector:
Когда создаём на одном сервере коннектор, а почтовых серверов в организации несколько, то при доставке почты, которая подпадает под этот коннектор, вся почта будет идти на сервер, владеющий коннектором, а он, в свою очередь, будет маршрутизировать эту почту по коннектору.
Если поставить галку Scoped send connector, то доставлять почту на сервер с коннектором, чтобы он её отправил по коннектору, смогут только те сервера, которые находятся в одном сайте AD с этим же сервером. Эта галка важна в крупных компаниях.
Транспортные правила
По-умолчанию транспортных правил нет.
Принцип работы:
Правило всегда состоит из трёх элементов.
Настоятельно рекомендуется поэкспериментировать с транспортными правилами!
Естественно весь этот функционал настраивается. Существует специальный командлет Get-TransportService, который позволяет получить информацию о конфигурации транспорта на конкретном сервере. Так же он позволяет добраться до параметров настройки Tracking Logs. Они настраиваются на каждом сервере отдельно.
Менять настройки логирования можно через командлет Set-TransportService.
Фильтрация логов по отправителю:
Фильтрация логов по отправителю и получателю:
Журналы SMTP протокола
Отдельно, в специальных log-файлах протоколируется всё, что касается SMTP.
- Протоколируют только SMTP сессии
- Настраивается для транспортных сервисов
- Включаются исключительно на уровне коннекторов приёма и отправки
- По-умолчанию включено ведение журнала не на всех коннекторах
- Для диагностики нужно понимать через какие коннекторы шли соединения
SMTP-логи хранят следующую информацию:
date-time
connector-id
session-id
sequence-number
local-endpoint
remote-endpoint
event
data
context
Здесь нужно чётко понимать, что в Exchange сервере существует несколько служб транспорта и есть коннекторы, которые работают на Transport Service, и есть коннекторы, которые работают на Frontend transport service. Необходимо понимать, какие коннекторы используются в какой момент.
Внимание: информация в файлах логов появляется не моментально, может пройти несколько минут, т.к. информация должна быть записана в файл из оперативной памяти.
Если необходимо сохранить переписку определённых пользователей, можно использовать несколько способов.
Можно использовать транспортное правило (копирование на определённый почтовый ящик, к примеру), а можно использовать журналирование.
Журналирование на уровне БД не требует дополнительных лицензий. При включении данного типа журналирования для каждого письма, входящего или исходящего из данной БД, формируется журнал. Нужно понимать, что включение журналирования на уровне БД приводит к громадному количеству дополнительных писем. На каждое отправляемое или получаемое письмо будет формироваться журнал и доставляться получателю этого журнала.
Обычно журналирование включается когда необходимо осуществлять слежку за человеком либо сохранять переписку конкретного человека.
Отправка писем от внешней системы через Exchange Server
Но в большинстве случаев подобные системы не умеют аутентифицироваться и подключаются анонимно.
Далее указываем по каким IP-адресам сервера слушать почту и по какому порту. По-умолчанию все адреса и стандартный 25 порт. Оставляем так, если не важно иное.
Теперь нам необходимо дать с помощью командлета Add-ADPermissions расширенные права для доставки любому получателю.
Теперь Open Relay должен работать.
Очень важно при открытии Open Relay создавать отдельный коннектор приёма и указать только один адрес, с которого осуществляется приём почты, не нужно указывать диапазон адресов.
Итак: удалил Remove-EdgeSubscription -Identity Edge2
И лог третьего шага:
./importedgeconfig.ps1 -cloneConfigData "C:\Install\Edge-Clo
neConfigData.xml" -isImport $true -CloneConfigAnswer "C:\Install\Import\CloneConfigAnswer.xml"
Warning:Passwords will be encrypted with the default script encryption key
Name DomainName DomainType Default
---- ---------- ---------- -------
A9ABA4D2-C21C-4bc5-8B30-3EA. A9ABA4D2-C21C-4bc5-8B30-3EA. Authoritative False
Confirm
Are you sure you want to perform this action?
Removing Accepted Domain "A9ABA4D2-C21C-4bc5-8B30-3EA47BBE3608".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): a
WARNING: The following service restart is required for the change(s) to take effect : MSExchangeTransport
WARNING: The following service restart is required for the change(s) to take effect : MSExchangeTransport
WARNING: The following service restart is required for the change(s) to take effect : MSExchangeTransport
WARNING: The following service restart is required for the change(s) to take effect : MSExchangeTransport
WARNING: The following service restart is required for the change(s) to take effect : MSExchangeTransport
WARNING: The following service restart is required for the change(s) to take effect : MSExchangeTransport
WARNING: The following service restart is required for the change(s) to take effect : MSExchangeTransport
WARNING: The following service restart is required for the change(s) to take effect : MSExchangeTransport
WARNING: The following service restart is required for the change(s) to take effect : MSExchangeTransport
WARNING: The following service restart is required for the change(s) to take effect : MSExchangeTransport
WARNING: The following service restart is required for the change(s) to take effect : MSExchangeTransport
WARNING: The following service restart is required for the change(s) to take effect : MSExchangeTransport
WARNING: The following service restart is required for the change(s) to take effect : MSExchangeTransport
WARNING: The following service restart is required for the change(s) to take effect : MSExchangeTransport
WARNING: The following service restart is required for the change(s) to take effect : MSExchangeTransport
WARNING: The following service restart is required for the change(s) to take effect : MSExchangeTransport
WARNING: The following service restart is required for the change(s) to take effect : MSExchangeTransport
WARNING: The following service restart is required for the change(s) to take effect : MSExchangeTransport
WARNING: The following service restart is required for the change(s) to take effect : MSExchangeTransport
WARNING: The following service restart is required for the change(s) to take effect : MSExchangeTransport
WARNING: The following service restart is required for the change(s) to take effect : MSExchangeTransport
WARNING: The following service restart is required for the change(s) to take effect : MSExchangeTransport
WARNING: The following service restart is required for the change(s) to take effect : MSExchangeTransport
WARNING: The following service restart is required for the change(s) to take effect : MSExchangeTransport
WARNING: The following service restart is required for the change(s) to take effect : MSExchangeTransport
WARNING: The following service restart is required for the change(s) to take effect : MSExchangeTransport
Confirm
Are you sure you want to perform this action?
Removing Receive connector "EDGE02\Default internal receive connector EDGE01".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): y
Confirm
Are you sure you want to perform this action?
Removing Send connector "EdgeSync - Default-First-Site-Name to Internet".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): y
Confirm
Are you sure you want to perform this action?
Removing Send connector "EdgeSync - Inbound to Default-First-Site-Name" that is managed by the Microsoft Exchange
EdgeSync service to deliver inbound e-mail.
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): y
Confirm
Are you sure you want to perform this action?
Removing attachment filter entry "FileName:*.ade".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): y
Confirm
Are you sure you want to perform this action?
Removing attachment filter entry "FileName:*.adp".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): y
Importing Edge configuration information Succeeded.
Если вам интересна тематика облачных технологий, рекомендую обратиться к тегу Cloud на моем блоге.
Настройка локальной инфраструктуры
Настройка домена внешнего доступа
Конфигурацию виртуальных каталогов можно изменить также и через Powershell, но это займет значительно больше времени.
Мастер гибридной конфигурации
Подготовка и запуск мастера
Перед запуском мастера нужно залогиниться в Office365 из центра администрирования Exchange. Зайдите в ECP и выберите раздел меню гибридное развертывание. Далее нажмите настроить:
Вам будет предложено войти в Office365:
Это необходимо сделать под учетной записью глобального администратора Office365, которую вы должны были создать ранее (Подготовка Azure Active Directory).
Примечание: на этом этапе нужно включить в параметрах браузера поддержку файлов cookie, если она отключена .Разрешив всплывающие окна для открывшейся страницы, вам будет предложено скачать мастер гибридной конфигурации (файл HybridSetup.exe):
Всегда скачивайте мастера именно отсюда, поскольку только так можно быть уверенным, что вы получили самую последнюю версию мастера.
После окончания скачивания запустите мастера с правами администратора и обязательно на сервере Exchange (что логично):
Нажмите Установить. После этого пойдет процесс скачивания необходимых файлов:
Дождитесь его окончания и подтвердите запуск приложения:
Работа мастера гибридного развертывания
При появлении приветственного окна мастера гибридной конфигурации нажмите далее:
На следующем этапе мастер должен самостоятельно обнаружить оптимальный сервер Exchange в вашей организации. Как только это произошло, нажимаем далее:
На открывшейся странице вам нужно будет ввести учетные данные администратора предприятия локальной и облачной организации:
На следующей странице будет проверка подключений к локальной и облачной организации и если все пройдет успешно, вы увидите статус Выполнено успешно:
Далее вам нужно будет выбрать гибридные функции, которые будут доступны в последующем. В большинстве случаев советую выбрать Полную гибридную конфигурацию, это же написано и в официальной документации:
На следующей странице необходимо включить доверие федерации. Смело нажимайте включить:
Если на следующем шаге вы увидели ошибку:
Периодически нажимаем подтвердить право владения доменом. При успешном подтверждении вы перейдете на страницу:
Если у вас в организации присутствуют пограничные транспортные серверы Edge (подробнее читайте в статье Настройка Exchange 2013 Edge), то выберите второй пункт, в противном случае оставьте все как есть 4 .
В конфигурации Соединителя получения выберите необходимый сервер:
Аналогичное действие проделайте при выборе соединителя отправки:
Далее выбор сертификата (сертификат должен быть от доверенного ЦС).
На следующем этапе нужно ввести адрес локальной организации Exchange для маршрутизации почты из Exchange Online Protection (EOP). Разумеется это должно быть внешнее публичное имя DNS:
На последнем шаге не предлагается никаких опций, нажимайте обновить:
Дождитесь завершения настройки:
Если все пройдет успешно, то вы увидите страницу:
Если же нет, то как раз для вас чуть ниже есть глава по диагностике и устранению неполадок.
Troubleshooting
Далеко не всегда все может пойти гладко и развертывание технически сложной гибридной конфигурации не исключение.
Читайте также: