В этой и следующей статьях мы рассмотрим особенности аудита изменений на серверах Microsoft Exchange. Начнем с аудита почтовых ящиков, а в следующий раз продолжим постом про аудит действий администраторов.
Аудит почтовых ящиков является одной из самых важных функций Microsoft Exchange 2013. В почтовых ящиках может содержаться информация различного рода – конфиденциальные данные организации, рабочие документа, а также, персональные данные. Во многих организациях администраторы не включают аудит почтовых ящиков на серверах Exchange. Часто бывает необходимо провести некое «расследование» действий пользователей, но если аудит не включен, то информацию в журналах событий найти невозможно.
Случаи, о которых я говорю, достаточно распространенные:
- Почтовый ящик был скомпрометирован, произошла утечка конфиденциальной информации. Необходимо выяснить, кто имел доступ к ящику, и какие действия происходили.
- В организации имеется почтовый ящик, доступ к нему делегирован нескольким сотрудникам (например, на время отпуска руководителя – его заместителям). Необходимо понять, — кто из них удалил важные сообщения.
- В организации имеется общий почтовый ящик (например, support@domain.ru), доступ к нему имеет множество сотрудников. Необходимо понять, кто из них рассылал нежелательные сообщения от имени общей учетной записи.
- В организации имеется стандарт протоколирования доступа к информационным ресурсам, в т.ч. и почтовым ящикам.
Существует три уровня аудита почтовых ящиков Exchange:
- AuditOwner – Информация об операциях, проведенных владельцем ящика.
- AuditDelegate – Информация об операциях, проведенных сторонними получателями/делегатами в отдельном ящике, включает следующие типы операций: Update, SoftDelete, HardDelete, SendAs, Create.
- AuditAdmin – Информация об операциях, проведенных администраторами в отдельном ящике, включает следующие типы операций: Update, Move, MoveToDeletedItems, SoftDelete, HardDelete, FolderBind, SendAs, SendOnBehalf, Create.
По умолчанию аудит почтовых ящиков выключен. После включения журналы аудита событий генерируются и хранятся в папке «Recoverable Items > Audits». Журналы аудита сохраняются всегда, даже при перемещении почтового ящика в новую базу на том же или другом сервере.
Команда, позволяющая проверить, какие уровни аудита включены для отдельного почтового ящика:
Get-Mailbox Krishna.kumar | fl *audit*
Аудит почтовых ящиков включается с помощью команды set-mailbox с параметром AuditEnabled, равным $true:
Set-Mailbox –Identity Krishna.kumar –AuditEnabled $true
Аудит на всех почтовых ящиках в организации можно включить с помощью следующего небольшого скрипта PowerShell:
$UserMailboxes = Get-Mailbox -Filter {(RecipientTypeDetails -eq ‘UserMailbox’)}
$UserMailboxes | Set-Mailbox -AuditEnabled $True
Журналы аудита хранятся по умолчанию в течение 90 дней, этот параметр можно изменить с помощью команды set-mailbox с параметром AuditLogAgeLimit:
Set-mailbox –identity Krishna.Kumar –AuditlogAgelimit 120
Включение аудита действий владельца ящика может сгенерировать большое количество записей в журналах аудита, поэтому по умолчанию он выключен. На рисунке ниже показаны значения по умолчанию для всех уровней аудита, т.е. типы операций, которые отслеживаются.
Мы рекомендуем включать аудит только тех операций, которые необходимо отслеживать в рамках ваших «расследований» или для соблюдения политик и нормативов. Ниже мы привели команду PowerShell, необходимую для включения аудита операции HardDelete для владельца почтового ящика:
Set-Mailbox -Identity “Krishna.kumar” -AuditOwner HardDelete
В журналах аудита почтовых ящиков протоколируются следующие действия:
- Копирование объектов/сообщений в папки
- Отправка или получение сообщений
- Попытки доступа к папкам
- Все попытки удаления сообщений (в папку «Удаленные» или насовсем)
- Перемещение сообщений из одной папки в другую или в папку «Удаленные»
- Отправка сообщений от имени другого пользователя
- Изменение объектов и их свойств
Журналы аудита событий генерируются и хранятся в почтовом ящике, в папке «Recoverable Items > Audits», они скрыты от глаз пользователя. После включения аудита вы можете проводить поиск по одному или нескольким почтовым ящикам одновременно. Поиск можно проводить, используя PowerShell или консоль EAC (Exchange Admin Central).
Поиск в журналах событий с использованием PowerShell, приведем несколько примеров:
1. Команда позволяет проводить поиск попыток подключения от имени «Admin» и «Delegate» по всем журналам в интервале времени в ящике пользователя «Krishna.Kumar»
Search-MailboxAuditLog -Identity Krishna.Kumar -LogonTypes Admin,Delegate -StartDate 4/1/2014 -EndDate 4/30/2014 -ResultSize 4000
2. Команда позволяет проводить поиск операций «SendAS», выполненных от имени «Admin» и «Delegate» в ящиках пользователей «Krishna.Kumar» and «Rajesh.Kumar»
Search-MailboxAuditLog -Identity Krishna.kumar,rajesh.kumar -LogonTypes Admin,Delegate -ShowDetails -StartDate 4/1/2012 -EndDate 4/1/2014 | Where-Object {$_.Operation -eq “sendas”}
3. Команда позволяет проводить поиск операций «Hard Delete», выполненных от имени владельца в ящике пользователя «Krishna.Kumar»
Search-MailboxAuditLog -Identity Krishna.kumar -LogonTypes Owner -ShowDetails -StartDate 4/1/2014 -EndDate 3/1/2012 | Where-Object {$_.Operation -eq “HardDelete”}
Поиск в журналах событий с использованием консоли EAC (Exchange Admin Central):
- Откройте консоль EAC, выберите пункт «Compliance Management» > «Auditing» затем нажмите на ссылку «Run a non-owner mailbox access report»
- Выберите интервал дат и почтовый ящик, в котором необходимо искать и нажмите кнопу «Search»
Вот, по сути, и все, что требуется администратору для расследование инцидентов или контроля действия пользователя на серверах Exchange.
Вы можете задать любые вопросы (и высказать пожелания) в комментариях или в других социальных сетях: facebook, twitter, вконтакте.
Автор: AlexMartin