Есть интересный баг, а может даже фича в Exchange 2007/2010 с отправкой писем пользователю имеющему внешний почтовый ящик.
Предыстория
Допустим у вас имеется какой-нибудь OU в вашем домене, который нужен для авторизации сторонних пользователей, которым вы не выделяете почтовый ящик своего домена, а они используют свой. Назовем такой OU — External. Обычно такое требуется если вы работаете с какими-либо партнёрами и представляете им доступ к каким-то ресурсам своей организации.
Открывая нового пользователя в данной OU вы указываете его внешний e-mail адрес скажем username@externaldomain.com и естественно вы хотите чтобы этот пользователь имел возможность состоять в списках рассылок и получать все письма которые генерируются разными системами автоматически, а также чтобы он был доступен для пользователей из других OU в адресной книге и другие пользователи имели возможность посылать ему письма обычном способом выбирая получателя в Аутлуке.
Так вот, сделать такое стандартными средствами Exchange невозможно! Почта попросту не отправляется на внешнии адреса, если такой указан в AD у пользователя. Я перерыл кучу статей и единственный способ, который я нашел и который авторитетно рекомендует Microsoft в Technet это открытие для каждого такого пользователя еще и мэйл контакта на который будет пересылаться вся почта. (Вот здесь процесс в картинках) Вы только вдумайтесь — открывать на каждого существующего пользователя еще и контакт с теми же самыми данными плюс с изменением буквы в имени или фамилии, так как такой объект ввиде пользователя уже существует и AD не даст вам создать дубликат. А потом еще и настраивать форвард с пользователя на контакт. Я извиняюсь, но это идиотизм и костыли. Вполне официальные костыли.
Учим мат-часть
Имея небольшое представление о структуре данных и аттрибутов LDAP я отправился изучать список аттрибутов которые использует Exchange и которые будут необходимы нам для решения поставленной задачи.
Итак нам потребуется LDAP Attribute Editor, в режим которого можно попасть из консоли AD Users & Computers, View --> Advanced Features. Далее находим нужного пользователя и открываем вкладку Attribute Editor.
За напильник!
Далее находим аттрибут — 'proxyAddresses' и добавляем значения:
SMTP:username@externaldomain.com
X400:C=US;A=LOCALDOMAIN;P=LOCALDOMAIN;O=Exchange;S=Surname;G=Name;
Где соотвественно username@externaldomain.com — внеший почтовый ящик пользователя, а X400 как раз позволит нам использовать MTA (mail transfer agent) для данного пользователя. (C=Страна, A=Административный управляющий домен, P=Приватный управляющий домен, O=Организация, S=Фамилия, G=Имя)
Находим аттрибут 'targetAddress' и добавляем значения
SMTP:username@externaldomain.com
В аттрибут 'legacyExchangeDN' добавляем
/o=LOCALDOMAIN/ou=First Administrative Group/cn=Recipients/cn=NameSurname
И заполняем в соотвествии с названием вашей организации (домейна)
В принципе этого уже достаточно чтобы заработал почтовый роутинг на внешнии адреса локальных пользователей.
Тюнинг
Находим аттрибут 'mAPIRecipient' и ставим его значие FALSE. Это отключает Rich Text, стили и оформление писем для Аутлука. Если этого не сделать, то пользователи не аутлука, а веб-мэйла или других почтовых программ, которые не умеют форматировать письма в Rich Text будут получать аттачментом файл Winmail.dat, который и содержит эти стили.
Теперь если мы желаем, чтобы этот пользователь отображался в GAL (Global Addres List) в глобальном листе контактов организации выполняем следущее:
Находим аттрибут 'showInAddressBook' и добавляем туда три следущих записи:
CN=All Users,CN=All Address Lists,CN=Address Lists Container,CN=ORGANIZATION,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=DOMAIN,DC=com
CN=Default Global Address List,CN=All Global Address Lists,CN=Address Lists Container,CN=ORGANIZATION,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=DOMAIN,DC=com
CN=All Contacts,CN=All Address Lists,CN=Address Lists Container,CN=ORGANIZATION,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=DOMAIN,DC=com
Естественно значения ораганизации и домена вам нужно будет изменить на свои.
Также можно сделать несложный скрипт на PowerShell, который будет автоматически редактировать нужные аттрибуты.
Справка по LDAP аттрибутам — www.computerperformance.co.uk/Logon/LDAP_attributes_active_directory.htm
msdn.microsoft.com/en-us/library/ms675090(v=vs.85)
Автор: sticky
имею exh2010, адрес появился в GAL , но письма на него не отправляются. ошибка след. “Сообщение в очереди ‘…-EXCH02\Unreachable’. Последняя ошибка ‘Получатель почтового ящика не имеет базы данных почтовых ящиков’.” Помогите решить проблему