Главная Exchange/UC, Без рубрики, Новое Интернет почта через Edge Transport в Exchange 2010
  • Интернет почта через Edge Transport в Exchange 2010

    transport Недавно обнаружил, что в сети нет достаточно подробных инструкций по настройке сервера Exchange 2010 на работу с внешней почтой. В данной статье я постараюсь как можно более подробно и доступно описать процесс настройки Exchange Server 2010 для работы с внешней электронной почтой через Edge Transport Server.

    Для того чтобы сделать действительно полный Step-by-Step Guide, давайте рассмотрим процесс настройки внешней почты с самого начала. Как правило, данный процесс состоит из трех основных этапов:

    1. Регистрация доменного имени предприятия;
    2. Настройка MX записи на DNS сервере, обслуживающем доменное имя;
    3. Настройка Exchange сервера на работу с внешним доменом.

    На первом пункте мы останавливаться не будем, т.к. у подавляющего большинства компаний уже есть свое доменное имя в сети Интернет, а те, у кого ещё нет, могут легко его купить у любого регистратора (например, RU-CENTER www.nic.ru). Зарегистрировав доменное имя, вам нужно будет найти и прописать в настройках домена, по крайней мере, два DNS сервера, которые будут его обслуживать, это также можно сделать у регистратора, либо воспользоваться бесплатными DNS-серверами (например, http://freedns.ws/ru/).

    Первый этап пройден, теперь у провайдера нужно получить статический IP-адрес для своей организации и можно переходить ко второму этапу – настройке MX-записи на DNS сервере, обслуживающем внешний домен. Запись типа MX (Mail Exchange – почтовый сервер) определяет почтовый сервер, который будет обрабатывать почту для вашего домена.

    Редактируем зону на DNS сервере следующим образом:

    1. Регистрируем А-запись, например mail.firma.ru и указываем для неё внешний IP-адрес, на котором опубликован сервер Exchange;
    2. Регистрируем MX-запись и указываем для неё имя хоста – mail.firma.ru.

    Примечание: Если вы только что создали зону для вашего домена, то не думайте, что ping firma.ru будет сразу указывать на нужный IP, может потребовать довольно продолжительное время для того, чтобы все DNS сервера Интернета «узнали» о внесенных изменениях.

    Чтобы проверить правильность сделанных настроек нужно воспользоваться командой nslookup следующим образом:

    1. Проверяем MX-запись домена (к примеру, mail.ru):

    nslookup -type=mx mail.ru

    В результате, мы узнали, что почта на mail.ru ходит через хост mxs.mail.ru.

    1. Проверяем IP-адрес хоста mxs.mail.ru:

    nslookup mxs.mail.ru 8.8.8.8

    Примечание: В данном примере мы проверяем, что «знает» о хосте mxs.mail.ru не наш локальный DNS-сервер, а DNS сервере Google`a (8.8.8.8).

    Рис.1: Проверка MX-записи.

    Если все настроено правильно и MX-запись вашего домена резолвится во внешний IP-адрес вашего сервера, то можно приступать непосредственно к настройке Exchange`a.

    Публикация сервера Exchange.

    Есть два варианта публикации сервера Exchange в сети Интернет:

    1. Сервер с ролью Hub Transport находится в локальной сети предприятия и публикуется в Интернет через корпоративный Интернет шлюз;
    2. На шлюзе публикуется сервер с ролью Edge Transport, который располагается в DMZ-зоне и пересылает почту на локальный Hub Transport.

    В данной статье будет рассмотрен второй и наиболее правильный (на мой взгляд) вариант публикации сервера Exchange. Возможным минусом данной схемы является то, что вам необходимо будет приобрести дополнительную лицензию на Exchange Server 2010 и установить дополнительный Windows Server 2008.

    Примечание: Чтобы сэкономить на лицензии Windows Server и на аппаратном обеспечении, малые и средние организации могут поставить роль Edge Transport прямо на шлюз под управлением Threat Management Gateway (TMG), такая конфигурация официально поддерживается компанией Microsoft, поэтому так мы и сделаем (на ISA-сервер поставить Edge не получится). Подробнее про установку Exchange 2010 Edge Transport на TMG можно прочитать тут – http://www.alexxhost.ru/2010/04/exchange-server-2010-edge-server.html.

    В результате, схема нашей организации Exchange будет выглядеть следующим образом:

    Рис.2: Схема организации Exchange.

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

    Коммутация почты через Edge Transport

    Перед тем как начать настройку, давайте разберемся, как будет происходить взаимодействие пограничного транспортного сервера (Edge) с локальным транспортным сервером концентратором (Hub). Данная тема подробно описана в статье MS Exchange 2007/2010 – Edge Subscription (http://www.alexxhost.ru/2011/05/ms-exchange-20072010-edge-subscription.html) и из этой статье можно сделать вывод, что основой для взаимодействия данных транспортных серверов является пограничная подписка (Edge Subscription). О том, как она делается мы и поговорим далее.

    Настройка сетевых параметров Edge Transport сервера

    Перед тем, как оформлять подписку нужно правильно настроить сетевые параметры на сервере с ролью Edge Transport. Напомню, что в данном сценарии он не включён в доменную структуру предприятия, находится в DMZ-зоне и расположен на одном сервере с TMG (не забудьте правильно настроить правила на TMG для отправки/получения почты). Исходя из данного сценария, рекомендуется сделать следующие настройки:

    1. Получить у провайдера и установить на внешнем интерфейсе сервера IP-адрес (на который указывает ранее настроенная MX-запись), маску, шлюз и адреса DNS серверов провайдера;
    2. Если у вас в DMZ-зоне нет своего DNS-сервера, то нужно прописать в файл hosts в папке \%Systemroot%\System32\Drivers\Etc сопоставление имени Hub Transport сервера с его IP-адресом, т.е. добавить в конец файла строчку вида 192.168.0.10 hub.domain.local;
    3. На интерфейсе, смотрящем в локальную сеть предприятия установить IP-адрес и маску. Шлюз вписывать НЕ нужно;
    4. Настроить имя и DNS-суффикс компьютера, как показано на рис.4. (потом изменить эти настройки не получится);

    Рис.4: Настройка DNS-суффикса сервера.

    1. На локальном DNS сервере создать А-запись, указывающую на IP-адрес Edge-сервера.

    В результате Edge сервер должен уметь резолвить адреса Интернета и адрес сервера с ролью Hub Transport, а Hub Transport сервер, в свою очередь, должен знать, как найти Edge-сервер по его FQDN-имени (для проверки можно использовать команды ping и nslookup).

    Оформление Edge Subscription

    Как уже говорилось выше, компьютер, на котором установлена роль пограничного транспортного сервера, не имеет доступа к Active Directory. Все сведения о конфигурации и получателях хранятся в экземпляре служб облегченного доступа к каталогам (AD LDS) Active Directory. Данную службу заранее придется установить, как показано на рис.5.

    Рис.5: Установка службы облегченного доступа к каталогам (AD LDS).

    Для выполнения задач, связанных с поиском получателей, пограничному транспортному серверу требуются данные, которые находятся в Active Directory. Эти данные синхронизируются с пограничным транспортным сервером с помощью EdgeSync. EdgeSync представляет собой коллекцию процессов, выполняемых на компьютере с ролью транспортного сервера-концентратора (Hub Transport) для организации односторонней репликации сведений о получателе и конфигурации из Active Directory в AD LDS на пограничном транспортном сервере (Edge Transport).

    После установки AD LDS и правильной настройки сетевых параметров можно приступать к конфигурированию совместной работы Edge и Hub Transport серверов. Для этого оформим Edge Subscription следующим образом:

    1. На сервере c ролью Edge Transport выполним команду:

    New-EdgeSubscription –FileName c:\edge_subscr.xml

    Рис.6: Создание Edge Subscriprion.

    1. Полученный файл edge_subscr.xml скопируем на локальный Hub Transport сервер;
    2. Зайдем в консоль управления Exchange -> раздел Конфигурация организации -> действие New Edge Subscription

    Рис.7: Создание Edge Subscription на сервере Hub Transport.

    1. Выберем необходимый сайт AD и XML файл подписки. Не забудем оставить включенной галочку для автоматического создания отправляющих коннекторов.
    2. После завершения работы мастера, будут созданы коннекторы отправки, и через некоторое время будет выполнена синхронизация с сервером Edge Transport. Чтобы не дожидаться сеанса синхронизации, его можно выполнить вручную командой:

    Start-EdgeSynchronization

    После успешного создания пограничной подписки, необходимо настроить сам Exchange сервер на работу с получателями.
    Создание Accepted Domain и E-mail Address Policy
     

    Обслуживаемый домен (Accepted Domain) — это любое пространство имен SMTP, для которого организация Microsoft Exchange отправляет и принимает электронную почту. В связи с тем, что имя внешнего домена у нас отличается от локального (firma.ru и domain.local), необходимо на уровне организации добавить обслуживаемый домен firma.ru, с той целью, чтобы сервер Exchange смог с ним работать.

    Для этого перейдем на уровень конфигурирования организации -> Hub Transport -> Accepted Domain.

    Рис.11: Создание нового обслуживаемого домена.

    В мастере заполним отображаемое имя обслуживаемого домена, впишем сам домен и укажем, что домен будет Authoritative, т.к. почтовые ящики получателей будут находится в этом SMTP домене.

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

    E-mail Address Policy создаются на уровне организации в свойствах роли Hub Transport, выбором действия New E-mail Address Policy…

    Рис.12: Добавление E-mail Address Policy.

    Политику нужно применить ко всем типам получателей, без каких либо фильтров, привязать к нужному FQDN имени (как показано на рис.12) и указать в расписании немедленное выполнение (Immediately). В результате, политика адресов электронной почты (E-mail Address Policy), будучи привязанной к доверенному домену (Accepted Domain), автоматически создаст соответствующие адреса электронной почты всем получателям, к которым она применена.

    Примечание: Создание дополнительных адресов у получателей происходит не сразу, поэтому, чтобы не ждать, вы сами можете добавить e-mail адрес в свойствах почтового ящика, либо выполнить командлет Update-EmailAddressPolicy.

    Вы должны создать две политики – одну для домена firma.ru, другую для domain.local. В результате, каждый получатель в организации будет иметь по 2 e-mail адреса, причем в качестве обратного адреса, будет использоваться тот, который принадлежит политике с меньшим номером приоритета.

    На этом работа с сервером Hub Transport завершена и можно переместиться на Edge Transport.

    Переопределение адресов (Address Rewriting)

    В связи с тем, что у нас имена внешнего домена и домена AD отличаются, нам переписывать адреса во входящих и исходящих сообщениях (*.ru <-> *.local). В Microsoft Exchange Server 2010 для этих целей есть функция переопределения адресов (Address Rewriting), которая позволяет изменять адреса отправителей и получателей во входящих и исходящих сообщения. Подробнее про данную функцию можно почитать тут – http://technet.microsoft.com/ru-ru/library/aa996806.aspx.

    Для добавления политики переопределения адресов воспользуемся командлетом New-AddressRewriteEntry на сервере Edge Transprot:

    New-AddressRewriteEntry –Name “Lan – Internet” –InternalAddress “domain.local” – ExternalAddress “firma.ru”

    Рис.13: Добавление политики переопределения адресов.

    Примечание: Данная политика применяется не сразу, для немедленной её активации можно в ручную перезапустить службу Microsoft Exchange Transport.

    Возможные проблемы

    На этом базовая настройка Exchange Server 2010 на работу с внешней почтой через сервер Edge Transport, расположенный в DMZ-зоне предприятия, закончена. Следующим шагом будет проверка отправки и получения этой почты. Если по каким либо причинам почта не отправляется, либо не принимается, то я посоветовал бы для начала выполнить следующие шаги:

    1. Воспользоваться мастером Remote Connectivity Analyzer, расположенном в меню Toollbox. Данный мастер отправит вас на страничку http://testexchangeconnectivity.com/, с которой можно произвести тестирование многих сервисов Exchange`a.
    2. Посмотреть очередь сообщений Toolbox -> Queue Viewer с той целью, чтобы определить, на какой стадии зависло письмо. Данная утилита может показать не только очередь сообщений, но также текст последних ошибок, которые произошли с конкретной очередью и заголовки писем, находящихся в ней.
    3. Команда telnet YourServer 25 поможет вам проверить, доступны ли ваши сервера для приема почты.
    4. Если в Queue Viewer вы обнаружили проблемы связанные с DNS, то скорее всего вы не правильно настроили сетевые параметры интерфейсов, либо неверно отредактировали файл hosts.
    5. Также, для Edge Transport сервера можно указать адреса DNS-серверов, отличные, от тех, которые установлены на сетевых интерфейсах, делается это в меню Properties выбранного сервера – вкладки Internal DNS Lookups и External DNS Lookups.
    6. На коннекторах необходимо проверить вкладки Network, Authentication и Permission Group.
    7. После внесенных изменений на Hub Transport`e не забывайте выполнять синхронизацию (Start-EdgeSynchronization).
    8. Если ничего из выше озвученного не помогает, то можно посмотреть в сторону анализа логов системы, и включить Protocol Logging на вкладке General в свойствах коннекторов. Подробнее про анализ журналов транспорта можно почитать тут – http://technet.microsoft.com/ru-ru/library/aa998617.aspx.

    Заключение.

    Мы рассмотрели основные настройки, которые необходимо сделать, чтобы почтовая система вашей организации начала работать с внешним доменом через выделенный сервер с ролью Edge Transport. В следующих статьях мы поговорим про то, как защитить эту почту от спама и вирусов.

    Алексей Богомолов

Комментарии

  1. А как правильно ограничить, что определенным пользователям в инет можно почту слать, а большинству нет?

  2. Транспортным правилом можно.

  3. Алексей, спасибо за отличную статью.
    Действительно доступно и понятно, все примечания и акценты расставлены верно, многие вопросы отпадают сами собой.
    Особенно порадовал факт того, что статья действительно описывает процесс конфигурирования, а не установки продукта. Очень полезно и познавательно.

  4. Как работать без Edge Transport Role?

  5. Ещё проще чем с Edge-м просто у вас вместо 6-и коннекторов будут только 2 (№1 и 6), настроенные на самом Hub`e и не надо делать ни каких подписок.

  6. замечательная статья, спасибо!
    не подскажите такую же статью только для случая когда TMG является членом домена и желательно без всяких дополнений в виде Edge Transport Role.
    меня интересуют какие именно для такого случая нужны “Соединители отправки” и какие правила/политики добавить на TMG.
    еще раз спасибо! )

  7. Если вы хортите обойтись без Edge-роли, то на TMG достаточно просто опубликовать ваш сервер с ролью HUB Transport, для этого есть соответствующие мастеры на странице Политики межсетевого экрана – Опубликовать почтовые серверы и Опубликовать доступ веб-клиента Exchange

  8. хорошо, допустим, с TMG разобрались!
    а на Exchange какие «Соединители отправки» добавлять?

  9. Вот тут – http://technet.microsoft.com/ru-ru/library/bb738138(EXCHG.140).aspx подробненько написано (Send Connector создать, в Receive добавить анонимный доступ)

  10. 1. в TMG опубликовал “почтовый” сервер выбрав протоколы POP3 и SMTP указав прослушивать Внешнюю сеть и IP своего Exchange сервера.
    2. в Exchange добавил “Соединитель отправки” указав назначение “Интернет”, адресное пространство “*”, “Использовать MX-записи DNS” и “Использовать параметры внешних DNS-запросов”, добавил Исходный сервер свой же Exchange сервер (других в списке нет).
    3. в “Настройка серверов” -> “Транспортный сервер” -> “Default %servername%” добавил в Группы разрешений “Анонимные пользователи”

    результат: почта приходит, но не уходит!

    где я ошибся?

  11. Откройте раздел Инструменты и запустите Средство просмотра очереди и Анализатор соответствия рекомендациям, возможно они вам подскажут.

  12. Проблему решил! ))))))))
    на TMG кроме опубликованного почтового сервера (с протокалами “POP3-сервер” и “SMTP-сервер”) нужно еще было добавить правило разрешающее протокол SMTP с почтового сервера в Инет!

  13. Люди добрые помогите настроить Exch 2010 на работу с удаленным майл сервером, предоставленным хостингом, все ящики прописаны на нем, нужно чтобы Exch забирал с него почту и отправлял через него почту в Kerio все это делается на два щелчка, атут разобораться не могу.

  14. Exchange НЕ умеет ни откуда забирать почту (как Kerio), ему нужно, чтобы эта почта сама на него приходила!

  15. Т.е его надо настраивать как отдельный самостоятельный почтовый сервер.

  16. т.е. другими словами он не может работать как внутренний сервер, который пересылает и получает почту от провайдера?

  17. т.е. другими словами он не может работать как внутренний сервер, который пересылает и получает почту от провайдера ?

  18. Другими словами – он не может САМ забирать почту, она должна на него приходить! А пересылать – это пожалуйста, куда угодоно.

  19. ну у меня даже пересылка не работает ) пишет 421 REJECT 62.106.108.94 : PTR record does not exist! Понятное дело что я пересылаю на почтовик провайдера. зачем для меня то PTR запись она есть у провайдера, мне всего лишь нужно через него от имени моего AD Юзера, у которого прописан ящик провайдера отсылать, гдето какую-то галочку не поставил ))

  20. ну у меня даже пересылка не работает ) пишет 421 REJECT 62.106.108.94 : PTR record does not exist! Понятное дело что я пересылаю на почтовик провайдера. зачем для меня то PTR запись она есть у провайдера, мне всего лишь нужно через него от имени моего AD Юзера, у которого прописан ящик провайдера отсылать, гдето какую-то галочку не поставил ))))

  21. А зачем вам пересылать через почтовик провайдера? Отправляйте от своего имени. Вообще не совсем понятна цель использования Exchange`a в связке с почтой провайдера… Берите все в свои руки, либо настраивайте у пользователей в Outlook`e дополнительные POP3 учетки, которые сами будут общаться с провайдером в обе стороны.

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

  23. Для каких целей указана в ДНС суфикс именно test-mail.local ??
    Задача стоит, чтоб домен отличался от основного домен domain.local ??

    Нельзя на DNS сервере домена domain.local с A записью на хост например просто EDGE ??

  24. Нет, основной домен тоде test-mail.local. Дело в том, что Edge-сервер в домен не включон, а т.к. он член рабочей группы, то по умолчанию у него нет данного суффикса, следовательно нам его надо добавить руками.

  25. то есть если у меня домен yunus.ru где стоит exchange c ролью hub transport, то я суфикс должен на edge прописать yunus.ru и должно получится edge.yunus.ru ???

    просто в примере два разных домена показываются и создает неразбериху.

    я по примеру поставил edge.test-mail.local и при создании сабскришона возникает вот эта проблемма http://forums.msexchange.org/m_1800466552/tm.htm

  26. Вот текст ошибки:

    [PS] C:Windowssystem32>New-EdgeSubscription -FileName “c:EdgeServerSubscription.xml”
    New-EdgeSubscription : При запуске этой задачи внутри организации НЕЛЬЗЯ задавать параметр FileName.
    строка:1 знак:21
    + New-EdgeSubscription <<<< -FileName "c:EdgeServerSubscription.xml"
    + CategoryInfo : InvalidOperation: (:) [New-EdgeSubscription], InvalidOperationException
    + FullyQualifiedErrorId : 79839DD3,Microsoft.Exchange.Management.SystemConfigurationTasks.NewEdgeSubscription

  27. >…должен на edge прописать yunus.ru и должно получится edge.yunus.ru ???
    Да, именно так все и должно быть!

    >просто в примере два разных домена показываются и создает неразбериху…
    Да, возможно вы правы и неразбериха имеет место быть. Просто domain.local и firma.ru взяты для примера и обобщения. На рисунках показан test-mail.local, т.к. именно он использовался на тестовом стенде.

  28. Когда так сделал выходит эта ошибка
    [PS] C:Windowssystem32>New-EdgeSubscription -FileName «c:EdgeServerSubscription.xml»

    New-EdgeSubscription : При запуске этой задачи внутри организации НЕЛЬЗЯ задавать параметр FileName.

    строка:1 знак:21

    + New-EdgeSubscription <<<< -FileName "c:EdgeServerSubscription.xml"

    + CategoryInfo : InvalidOperation: (:) [New-EdgeSubscription], InvalidOperationException

    + FullyQualifiedErrorId : 79839DD3,Microsoft.Exchange.Management.SystemConfigurationTasks.NewEdgeSubscription

    Пробовал удилть роль и заного установить, но не получается удалить выдает ошибку:

    Роль пограничного транспортного сервера
    Ошибка

    Ошибка:
    При выполнении "$error.Clear(); $agentName = "Address Rewriting Outbound Agent"; $agent = get-transportagent -Identity:$agentName; if ($agent) { uninstall-transportagent -Identity:$agentName; };" произошла следующая ошибка: "Эту задачу можно выполнить только на сервере, выполняющем роль транспортного сервера-концентратора или пограничного транспортного сервера.".

    Эту задачу можно выполнить только на сервере, выполняющем роль транспортного сервера-концентратора или пограничного транспортного сервера.

    Пробовал вернуть все как было, то есть убрать суфик и получалось название просто edge, та же ситуцаия.

  29. I think you’ve just ctapured the answer perfectly