Когда инфраструктурой управляет несколько администраторов или команд, иногда всплывает неприятная ситуация: с сервера пропал агент, приложение или важный компонент. Например, был установлен Zabbix Agent, антивирус, backup-клиент или monitoring exporter, а потом внезапно его нет.
В Windows такие вещи часто можно расследовать через Event Viewer. Если приложение было установлено через MSI-пакет, Windows пишет события от провайдера MsiInstaller в журнал Application.
▪️ Полезные Event ID:
11707 - приложение успешно установлено
11724 - приложение успешно удалено
То есть можно посмотреть, кто и когда устанавливал или удалял нужный MSI-пакет.
▪️Ищем события по Zabbix:
$appname='*Zabbix*'
Get-WinEvent -FilterHashtable @{
LogName="Application"
ID=11707,11724
ProviderName='MsiInstaller'
} |
Where-Object {
$_.Message -like $appname
} |
Select-Object TimeCreated,
@{
Name='Username'
Expression={
(New-Object System.Security.Principal.SecurityIdentifier($_.UserId)).
Translate([System.Security.Principal.NTAccount]).Value
}
},
Message
В результате получим:
• время события
• пользователя
• текст события MSI Installer
• информацию об установке или удалении приложения
Так можно быстро понять, когда именно агент был удален и под какой учетной записью это произошло. Это полезно не только для Zabbix. Можно искать любое MSI-приложение:
$appname='*Chrome*'
$appname='*Backup*'
$appname='*Endpoint*'
▪️ Если нужно посмотреть все установки и удаления MSI-приложений без фильтра по имени:
Get-WinEvent -FilterHashtable @{
LogName="Application"
ID=11707,11724
ProviderName='MsiInstaller'
} |
Select-Object TimeCreated, Id, ProviderName, UserId, Message
Этот способ работает именно для приложений, которые ставились или удалялись через MSI. Если программу удалили вручную, через portable-директорию, скриптом с удалением файлов или сторонним инсталятором без нормальной записи в MSI-события, этих Event ID может не быть.
Еще один нюанс - глубина хранения логов. Если журнал Application уже перезаписан, старые события вы не найдете. Поэтому для нормального расследования лучше заранее настроить: увеличенный размер журналов, Windows Event Forwarding, централизованный сбор логов и аудит административных действий
#windowsserver #eventviewer
🧑💻 NetworkAdmin