Использование Zabbix для мониторинга состояния рабочих станций

Дано: Много клиентских компьютеров разбросанных по всему Интернету.

Надо: Отслеживать техническое состояние этих компьютеров.

Решение…

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

Итак, начинаем планировать/создавать систему мониторинга.

1. Выбираем используемые средства.

Выбираем версию Zabbix

Выберем что-нибудь посвежее. Будем использовать Zabbix 4.2 или более новый. На момент написания статьи текущей была версия Zabbix 4.4.

Выбираем тип Zabbix-клиента.

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

Выбираем язык программирования скриптов.

Для написания скриптов можно использовать встроенные в систему возможности: bat-файлы, JS, VBS, PowerShell…

Я буду использовать скрипты написанные на Python. Почему? Потому, что Python имеет больше возможностей, чем bat-файл, и он проще, чем JS, VBS или PowerShell. К тому же  PowerShell часто нужно устанавливать дополнительно.

Многие скажут, что Python тоже нужно устанавливать отдельно. Согласен. Однако, после долгих мытарств, проб и ошибок я остановил свой выбор именно на Python.

Маленький нюанс!!! Мой выбор пал на Python 2.7, т.к. последние версии Python 3.х не работают на Windows XP, а 2.7 — работает.

2. Устанавливаем используемые средства

Устанавливаем Python 2.7 на клиентский компьютер

Устанавливаем Zabbix-сервер 4.2 (или выше)

Устанавливаем Zabbix-агента

3. Выбираем параметры для наблюдения.

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