Exchange 2010 – часть 4

Exchange 2010 LogoПродолжаем выпускать Exchange в интернеты

И вот, начиненные всеми этими славными знаниями, мы можем наконец заняться маршрутизацией сообщений.

Microsoft решили, что проводить антивирусную и антиспам проверку следует в DMZ, ну а сервисы, которые располагаются в DMZ не должны быть членами домена. So, here comes the Exchange Transport Server, использующий AD LDS (AD Lightweight Directory Services) как место хранения настроек.

На HTS существует сервис, носящий название Microsoft Exchange EdgeSync, который способен передавать на ETS конфигурации, информацию о пользователях и различные политики. EdgeSync реплицирует следующую информацию из AD в AD LDS на ETS:

  • Информация о получателях. Включает в себя:
    • Списки получателей. Каждый получатель идентифицируется по GUID назначенный ему в Active Directory. Если вы настроете пользовательскую учетную запись таким образом, что ей будет запрещено получать информацию снаружи организации, то информация о такой учетной записи просто не будет реплицироваться в AD LDS базу данных. Так же информация о удаленных или отключенный учетных записях не реплицируется в AD LDS, имейте это ввиду.
    • SMTP адреса для всех действующих пользователей – mail-enabled users, контакты, группы. Все это реплицируется в виде хэша (SHA-256).
    • Списки безопасных и заблокированных отправителей для каждого получателя.
    • Пользовательские настройки антиспама.
  • Список accepted domains.
  • Список remote domains.
  • Классификация сообщений.
  • Список внутренних SMTP серверов.
  • Список HTS для конкретного site в Active Directory.

Настройка EdgeSync

Нет ничего проще, чем настроить EdgeSync. Для начала укажем внутренние SMTP сервера командой

 Set-TransportConfig -InternalSMTPServiers ip.addr.of.server

Делается это для того, чтобы фильтры соединений не сбрасывали сессии от ваших внутренних серверов. Затем на ETS генерируется подписка:

New-EdgeSubscription -FileName C:\ES.xml

а на HTS это подписка регистрируется.

Стоит помнить, что для успешной работы схемы должен быть открыт TCP 25 SMTP как по направлению к HTS и по направлению к ETS, а так же TCP 50389 для LDAP, если AD LDS был настроен без использования SSL. В противном случае вам следует открыть TCP 50636.

Чтобы проверить работает EdgeSync или нет достаточно запустит cmdlet:

Test-EdgeSynchronization -FullCompareMode

Использование встроенных средств борьбы со спамом в Exchange 2010

По умолчанию антиспам агенты на ETS сконфигурированы, но не обновляются, что можно исправить с помощью cmdlet’a:

Enable-AntispamUpdates -IPReputationUpdatesEnabled $True -UpdateMode Automatic -SpamSignatureUpdatesEnabled $True

Проверить обновляются или нет фильтры можно с помощью cmdlet’a Get-AntispamUpdates.

Все это справедливо только до того, пока вы не накатите Service Pack 1 или 2. Если вы имели удовольствие его поставить, то Microsoft предлагает вам качать обновления ручками – подробнее тут http://technet.microsoft.com/en-us/library/bb124241.aspx. Ну или установить Forefront Protection for Exchange (FPE). В принципе, в настройке FPE нет ничего трудного. Если решитесь за это взяться, то рекомендую ознакомиться с циклом статей от Ильи Рудь на itband (1 2 3).

Альтернативно можно установить проверку спама на HTS, но из-за это стройность решения несколько теряется. Прочитать о том, как это делается можно тут – http://technet.microsoft.com/en-us/library/bb201691(v=exchg.141).aspx

Пара слов о troubleshooting

Первые два cmdlet’a, которые следует выполнить в процессе решения возникших проблем – это Test-SystemHealth и Test-ServiceHealth, которые помогут выявить самые просты проблемы, как, например, размонтированная база данных или остановленный сервис.

Существует 28 различный Test- cmdlet’ов с помощью которых можно проверить MAPI, replication health и т.д.

Корректность настройки сервисов, которые должны быть доступны из интернета можно выполнить с помощью https://www.testexchangeconnectivity.com.

Резервное копирование и восстановление встроенными в Windows средствами

Есть ситуации, когда лучше хотя иметь хотя бы временно решение, чем не иметь какого-либо вовсе. Windows Server Backup – это как раз такое решение для проблемы резервного копирования. Да, оно уступает другим продуктам, но уж лучше с ним, чем без терабайтной базы полной писем, задач и календарей пользователей, которая была утеряна по той или иной причине.

Import-Module Servermanager
Add-WindowsFeature Backup-Features

– поставят все, что вам нужно для резервных копий баз данных Exchange. Все резервные копии должны выполняться локально, то есть вы не можете поставить backp features на какой-то сервер и с него выполнять резервную копию баз данных. Учетная запись от имени которой будет создано задание на выполнение резервных копий должна быть делегирована правами локальной группы Backup Operators или Local Administrators. В процессе создания задания следует выбрать тип резервных копий VSS Full.

Разница между VSS Full и VSS Copy состоит в том, что VSS Full создает application consistent резервную копию, которая передает приложению информацию о том, что был совершен процесс резервного копирования. Так же в этом случае происходит усечение лога.

Восстановление пользовательских писем

Осуществляется самим пользователям. Да-да, self service for the win. Достаточно показать пользователям как пользоваться Recovery Deleted Items в  Outlook или OWA и helpdesk может вздохнуть полной грудью.

Восстановление баз данных

Базы можно восстановить в изначальное место, тем самым переписав все данные, а можно в альтернативное. Когда вы восстанавливаете базу данных в альтернативное место после процесса восстановления следует воспользоваться утилитой eseutil.exe, чтобы вернуть БД в clean state – http://itband.ru/2010/10/restore-mailbox-database/.

Восстановление почтовых ящиков

Почтовый ящик переходит в состояние disconnected, как только он теряет ассоциацию с учетной записью пользователя в Active Directory. По умолчанию такие ящики будут храниться на протяжении 30 дней, до того момента как они будут окончательно удалены из системы.

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

Get-MailboxStatistics -Server srvName  | where {$_.DisconnectDate -ne $null} | fl DisplayName, MailboxGUID, LegacyDN, DisconnectDate

Присоединить обратно:

Connect-Mailbox MailboxID -Database DBName -User UserToConnectTo -Alias MailboxAlias

Измеить время, в течении которого ящики, находящиеся в состоянии disconnected, будут храниться в базе:

  Set-MailboxDatabase DBName -MailboxRetention 31.00:00:00

Вот в общем и все, что хотелось бы оставить себе в заметках по мотивам внедрения Exchange 2010.