Смена пароля учетной записи windows через zabbix

Обновлено: 07.07.2024


В нашем случае для использования будет база данных с названием name_of_db :

Отобразим список доступных пользователей:

> select * from users;

Ответ:


Назначаем новый пароль для администратора test_admin :

> update users set passwd=md5('new_pass') where alias='test_admin';

Внимание! В поздних весиях Zabbix может быть не поле alias , a поле username . Его переименовали!

Ответ:


Выходим из системы базы данных:

Перезапускаем Zabbix server:

Теперь вы сможете войти под администратором test_admin или пользователем Zabbix web-интерфейс используя новый пароль new_pass .

2.2. Изменение пароля пользователя базы данных системы мониторинга Zabbix.

Если вам потребуется сменить пароль для подключения к базе данных системы мониторинга Zabbix, то первым делом отредактируйте файл конфигурации:

Найдите директиву DBPassword и задайте в ней новый пароль:

Измените настройки так же ещё здесь:

Найдите директиву $DB['PASSWORD'] и задайте в ней также новый пароль:

Подключаемся к системе баз данных:

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

Теперь выполняем команду на смену пароля от базы данных Zabbix на новый пароль:

> SET PASSWORD FOR user_of_db@localhost =PASSWORD('NewStrongPassword');

Ответ:


Выходим из системы базы данных:

Перезапускаем Zabbix server:

Пароль пользователя базы данных системы мониторинга Zabbix успешно был изменен.

image

Итак, для начала я установил сервер мониторинга Zabbix. В качестве платформы мы будем использовать ОС FreeBSD. Думаю, что рассказывать в деталях о процессе установки и настройки нет необходимости, довольно подробная документация на русском языке есть на сайте разработчика, начиная от процесса установки до описания всех возможностей системы.
Мы будем считать что сервер установлен, настроен, а так же настроен web-frontend для работы с ним. На момент написания статьи система работает под управлением ОС FreeBSD 9.1, Zabbix 2.2.1.

Мониторинг событий безопасности MS Windows Server

С помощью системы мониторинга Zabbix можно собирать любую имеющуюся информацию из системных журналов Windows с произвольной степенью детализации. Это означает, что если Windows записывает какое-либо событие в журнал, Zabbix «видит» его, например по Event ID, текстовой, либо бинарной маске. Кроме того, используя Zabbix, мы можем видеть и собирать колоссальное количество интересных для мониторинга безопасности событий, например: запущенные процессы, открытые соединения, загруженные в ядро драйверы, используемые dll, залогиненных через консоль или удалённый доступ пользователей и многое другое.

Всё, что остаётся – определить события возникающие при реализации ожидаемых нами угроз.

Устанавливая решение по мониторингу событий ИБ в ИТ инфраструктуре следует учитывать необходимость выбора баланса между желанием отслеживать всё подряд, и возможностями по обработке огромного количества информации по событиям ИБ. Здесь Zabbix открывает большие возможности для выбора. Ключевые модули Zabbix написаны на C/C++, скорость записи из сети и обработки отслеживаемых событий составляет 10 тысяч новых значений в секунду на более менее обычном сервере с правильно настроенной СУБД.

Всё это даёт нам возможность отслеживать наиболее важные события безопасности на наблюдаемом узле сети под управлением ОС Windows.

Итак, для начала рассмотрим таблицу с Event ID, которые, на мой взгляд, очевидно, можно использовать для мониторинга событий ИБ:

События ИБ MS Windows Server Security Log
Способы мониторинга событий ИБ MS Windows Server

Рассмотрим практическое применение данной задачи.
Для сбора данных необходимо создать новый элемент данных:

image

При желании для каждого Event ID можно создать по отдельному элементу данных, но я использую в одном ключе сразу несколько Event ID, чтобы хранить все полученные записи в одном месте, что позволяет быстрее производить поиск необходимой информации, не переключаясь между разными элементами данных.

Хочу заметить что в данном ключе в качестве имени мы используем журнал событий Security.
Теперь, когда элемент данных мы получили, следует настроить триггер. Триггер – это механизм Zabbix, позволяющий сигнализировать о том, что наступило какое-либо из отслеживаемых событий. В нашем случае – это событие из журнала сервера или рабочей станции MS Windows.

Теперь все что будет фиксировать журнал аудита с указанными Event ID будет передано на сервер мониторинга. Указание конкретных Event ID полезно тем, что мы получаем только необходимую информацию, и ничего лишнего.

Вот одно из выражений триггера:

image

Если же необходимо отслеживать определенного пользователя, например “Администратор”, можно добавить к выражению триггера проверку по regexp:


Тогда триггер сработает только в том случае если будет осуществлён вход в систему именно под учетной записью с именем “Администратор”.

Мы рассматривали простейший пример, но так же можно использовать более сложные конструкции. Например с использованием типов входа в систему, кодов ошибок, регулярных выражений и других параметров.

Мониторинг событий безопасности Unix систем

Система мониторинга Zabbix так же позволяет собирать информацию из лог-файлов ОС семейства Unix.

События ИБ в Unix системах, подходящие для всех

Такими проблемами безопасности систем семейства Unix являются всё те же попытки подбора паролей к учётным записям, а так же поиск уязвимостей в средствах аутентификации, например, таких как SSH, FTP и прочих.

Некоторые критически важные события в Unix системах

Исходя из вышеуказанного следует, что нам необходимо отслеживать действия, связанные с добавлением, изменением и удалением учётных записей пользователей в системе.
Так же немаловажным фактом будет отслеживание попыток входа в систему. Изменения ключевых файлов типа sudoers, passwd, etc/rc.conf, содержимое каталогов /usr/local/etc/rc.d наличие запущенных процессов и т.п.

Способы мониторинга ИБ в Unix системах

Рассмотрим следующий пример. Нужно отслеживать входы в систему, неудачные попытки входа, попытки подбора паролей в системе FreeBSD по протоколу SSH.

Вся информация об этом, содержится в лог-файле /var/log/auth.log.
По умолчанию права на данный файл — 600, и его можно просматривать только с привилегиями root. Придется немного пожертвовать локальной политикой безопасности, и разрешить читать данный файл группе пользователей zabbix:
Меняем права на файл:


Нам понадобится новый элемент данных со следующим ключом:

image

Все строки в файле /var/log/auth.log содержащие слово ”sshd” будут переданы агентом на сервер мониторинга.

Далее можно настроить триггер со следующим выражением:

image

Это выражение определяется как проблема, когда в лог-файле появляются записи, отобранные по регулярному выражению “error:”. Открыв историю полученных данных, мы увидим ошибки, которые возникали при авторизации по протоколу SSH.

Вот пример последнего значения элемента данных, по которому срабатывает данный триггер:

image

Рассмотрим ещё один пример мониторинга безопасности в ОС FreeBSD:
С помощью агента Zabbix мы можем осуществлять проверку контрольной суммы файла /etc/passwd.
Ключ в данном случае будет следующий:


Это позволяет контролировать изменения учётных записей, включая смену пароля, добавление или удаление пользователей. В данном случае мы не узнаем, какая конкретная операция была произведена, но если к серверу кроме Вас доступ никто не имеет, то это повод для быстрого реагирования. Если необходимо более детально вести политику то можно использовать другие ключи, например пользовательские параметры.

Например, если мы хотим получать список пользователей, которые на данный момент заведены в системе, можно использовать такой пользовательский параметр:


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

Или же можно использовать такой простой параметр:


Так мы увидим на Dashboard, кто на данный момент находится в системе:

image

Мониторинг событий ИБ на сетевых устройствах

С помощью Zabbix можно так же очень эффективно отслеживать события ИБ на сетевых устройствах Cisco и Juniper, используя протокол SNMP. Передача данных с устройств осуществляется с помощью так называемых трапов (SNMP Trap).

С точки зрения ИБ можно выделить следующие события, которые необходимо отслеживать — изменения конфигураций оборудования, выполнение команд на коммутаторе/маршрутизаторе, успешную авторизацию, неудачные попытки входа и многое другое.

Способы мониторинга

Рассмотрим опять же пример с авторизацией:
В качестве стенда я буду использовать эмулятор GNS3 с маршрутизатором Cisco 3745. Думаю многим знакома данная схема.

Для начала нам необходимо настроить отправку SNMP трапов с маршрутизатора на сервер мониторинга. В моём случае это будет выглядеть так:


Будем отправлять события из Syslog и трапы аутентификации. Замечу, что удачные и неудачные попытки авторизации пишутся именно в Syslog.

Далее необходимо настроить прием нужных нам SNMP трапов на сервере мониторинга.
Добавляем следующие строки в snmptt.conf:


В нашем примере будем ловить трапы Syslog.

Теперь необходимо настроить элемент данных для сбора статистики со следующим ключом:

image

Если трап не настроен на сервере мониторинга, то в логе сервера будут примерно такие записи:


В результате в полученном логе будет отражаться информация о попытках входа с детализированной информацией (user, source, localport и reason в случае неудачи):

image

Ну и можно настроить триггер для отображения события на Dashboard:


В сочетании с предыдущим пунктом у нас на Dashboard будет информация вот такого плана:

image

Аналогично вышеописанному примеру можно осуществлять мониторинг большого количества событий, происходящих на маршрутизаторах Cisco, для описания которых одной статьей явно не обойтись.

Хочу заметить что приведённый пример не будет работать на продуктах Cisco ASA и PIX, так как там несколько иначе организована работа с логированием авторизации.

Juniper и Syslog

На маршрутизаторе нам необходимо настроить отправку Syslog на сервер хранения:


По умолчанию в настройках syslog.conf все что приходит с auth.info должно записываться в /var/log/auth.log. Далее делаем все аналогично примеру с мониторингом входов в Unix.

Вот пример строки из лога:

image

Остается только настроить триггер на данное событие так же как это было рассмотрено в примере с авторизацией на Unix сервере.

Таким способом можно отслеживать множество событий, среди которых такие как: сохранение конфигурации устройства (commit), вход и выход из режима редактирования конфигурации (edit).
Так же хочу заметить, что аналогичным способом можно осуществлять мониторинг и на устройствах Cisco, но способ с SNMP трапами мне кажется более быстрым и удобным, и исключается необходимость в промежуточном Syslog сервере.


Восстановление паролей в системе от различных программ - одна из насущных задач нашего времени. Связано в первую очередь с тем, что в целях безопасности нужно помнить огромное количество паролей от разных программ. Процесс сброса паролей в большинстве случаев несложен. В данной статье разберём процесс сброса пароля администратора системы мониторинга zabbix и пароля root в MySQL.

Восстановление пароля администратора zabbix и пароля root в MySQL

Для того, чтобы восстановить пароль администратора zabbix и пароль пользователя root в MySQL открываем командную строку и выполняем команды под root (или используем sudo).

Производим поиск конфигурационного файла zabbix и смотрим к какой базе данных идёт коннект

Найденный конфигурационный файл открываем с помощью nano (или используем vi, mc или любой текстовый редактор).

Находим имя базы данных для zabbix

restore password zabbix rrot mysql2

Подключаемся к серверу MySQL

Воодим пароль root для MySQL. Если этот пароль не помним, то придётся его сбросить.

restore password zabbix rrot mysql3

Восстановление пароля root в MySQL

1. Останавливаем службу mysql

2. Запускаем службу mysql без использования grant tables в фоновом режиме

6. Отключаемся от сервера MySQL

7. Перезапускаем сервер MySQL

Сброс пароля root в MySQL осуществлён, пора переходить к восстановлению пароля администратора zabbix.

Сброс пароля администратора zabbix

Подключаемся к серверу MySQL под пользователем root с новым паролем

Вводим пароль root и затем подключаемся к базе данных zabbix

Устанавливаем новый пароль для пользователя "Admin"

Теперь можно зайти в веб-интерфейс zabbix под пользователем "Admin" уже под новым паролем.

date

13.07.2020

directory

Active Directory, CentOS, Linux, Ubuntu

comments

Один комментарий

Конечный результат: заходя на URL Zabbix, пользователь автоматически аутентифицируется без ввода учетных данных. Для этого пользователю нужно быть залогиненным в Windows под доменным аккаунтом, который привязан к заббиксу. Также у пользователя должен быть настроен браузер (включена поддержка Kerberos и прописаны доверенные сайты интрасети для IE).

  • Ubuntu Server 18.04 LTS;
  • Домен Active Directory, функциональный уровень 2008 (или выше);
  • Zabbix Server 4.0.11, веб сервер – Apache2 (инструкция по установке Zabbix);
  • A Запись в DNS для domain.local.

Настройка LDAP аутентификации Zabbix в Active Directory

Привязка доменного пользователя к Zabbix

Сначала нужно привязать пользователей домена к Zabbix. Для этого достаточно создать в заббиксе пользователя с таким же логином, как и в домене. Например, если ваш логин (атрибут sAMAccountName) user_5, то и пользователь в Zabbix должен иметь такое же имя входа.

создать пользователя в zabbix

Проделайте это с каждым пользователем, который будет пользоваться Zabbix.

Создание Active Directory учетки для связи Zabbix с доменом

Теперь нужно создать в Active Directory отдельного пользователя, через которого будет выполняться привязка Zabbix к домену. На практике, можно использовать любой доменный аккаунт, но лечше создать выделенный служебный аккаунт. В моём случае это будет zabbix_admin. Для создания пользователя в AD я воспользуюсь PowerShell командой New-ADUser:

New-ADUser -Name "zabbix_admin" -GivenName "zabbix_admin" -Surname "zabbix_admin" -SamAccountName "zabbix_admin" -AccountPassword (Read-Host -AsSecureString "Password:") -DisplayName "zabbix_admin" -Enabled $true

Выполните команду в консоли PowerShell и задайте пароль пользователя. Ваш новый пользователь будет находиться в контейнере Users в корне домена.

Настройка LDAP аутентификации в веб интерфейсе Zabbix

Теперь перенастроим Zabbix на LDAP аутентификацию. В веб-интерфейсе перейдите в Administration -> Authentication, вкладка LDAP settings. Включите опцию Enable LDAP authentication и заполните следующие поля.

настройка LDAP аутентфикации в zabbix через Active Directory

проверка ldap аутентфикации в zabbix

Перед завершением настройки, обязательно проверьте валидность ваших настроек, выполнив тестовый логин (кнопка Test). Укажите пользователя (мы завели его в zabbix ранее) и его пароль из AD.

Если тест пройден успешно, то сохраняйте настройки и переключите тип авторизации в Zabbix с Internal на LDAP.

Изменить тиа аутентфикации в zabbix на ldap

zabbix включить HTTP authentication

На этом настройка LDAP аутентификации завершена.

Совет. В случае недоступности вашего LDAP сервера, вы не сможете попасть в Zabbix. Чтобы переключиться обратно на внутреннею аутентификацию, зайдите в mysql и выполните команду:

Настройка прозрачной (Single Sign On) аутентификации в Zabbix (Apache2, krb5-user)

Сначала в файле /etc/hostname укажите FQDN имя сервера, которое должно совпадать с DNS записью в вашем домене, в моём случае это zabbix.domain.local.

В файле /etc/hosts также пропишите FQDN вашего сервера на локальный IP и на IP вашего сервера:

Для корректной работы Kerberos аутентификации необходимо синхронизировать время с контроллером вашего домена. Ставим пакет ntpdate и направляем его на контроллер домена

apt-get install ntp ntpdate
ntpdate dc.domain.local

В CentOS 8 для синхронизации времени используется chrony. Ntp и ntpdate отсутствуют в официальных репозиториях.

Сгенерировать keytab файл можно на контроллере домена:

Установим необходимые пакеты для работы Kerberos и модуль для apache2:

apt install krb5-user libapache2-mod-auth-kerb

Сконфигурируем krb5-user. Правим конфигурационный файл /etc/krb5.cnf:

Подставьте свой домен, в некоторых местах домен написан в заглавном виде – соблюдайте это правило.

Примечание. Обратите внимание на строчку с кейтаб файлом “default_keytab_name = /etc/apache2/zabbix.keytab”, убедитесь, что файл доступен по этому пути. Обязательно дайте этому файлу права на чтение для www-data, выполните chown www-data:www-data /etc/apache2/zabbix.keytab

Проверяем работу Kerberos аутентификации в Linux:

kinit - проверка Kerberos аутентификации в Linux через keytab файл

Вы можете столкнуться с ошибкой

В этом случае прежде всего попытайтесь авторизоваться из-под другого пользователя, например, вашей учетной записи^

Если аутентификация пройдет успешно, то значит дело в кейтаб файле. Убедитесь, что вы правильно сгенерировали его. Проверьте корректность команды для создания keytab файла.

Проверьте наличие SPN записи для вашего служебной учетной записи zabbix в AD. В командой строке контролера домена наберите:

setspn -l zabbix_admin

setspn -l zabbix_admin

добавить setspn запись пользователю ad

loginname SPN

Если не изменилось, то измените его вручную.

Под строчкой ServerName zabbix.domain.local добавьте

Часто встречается ошибка, которая связана с несовпадением KrbServiceName с тем, что прописан в keytab файле, поэтому на время тестирования можно поставить значение Any. После того как всё заработает, впишите валидное название сервиса. Свериться можно через команду klist -le /etc/apache2/zabbix.keytab .

Настройка браузеров для Kerberos аутентификации

Чтобы браузер Internet Explorer начал использовать Kerberos аутентификацию на сайте, нужно добавить этот URL в Local Intranet сайты. Google Chrome наследует эти настройки Internet Explorer, поэтому отдельно его настраивать не надо.

Заметка. URL вашего сайта Zabbix должен отсутствовать в списке Trusted sites, иначе Kerberos работать не будет. Сайт должен быть прописан только во вкладке Intranet sites.

В IE перейдите в Internet Options -> Security.

Добавить сайт zabbix в местную сеть

В Local intranet жмите Sites, проставьте чекбоксы как на скриншоте и жмите Advanced.

настройки IE для SSO аутентфикации

Пропишите URL вашего zabbix сервера.

добавить сайт zabbix в local inranet

Перейдите во вкладку Advanced и включите параметр Enable Integrated Windows Authentication.

Enable Integrated Windows Authentication

Если у вас не был отмечен этот пункт – перезагрузите компьютер. По умолчанию он включен.

Вы также можете настроить это через групповые политики

gpo для добавления сайта в доверенные

В браузере Mozilla Firefox в about:config поменяйте добавьте url адрес zabbix сервера в следующие параметры:

настройки kerberos аутентфикации для mozilla firefox

После выполнения этих этапов, настройку можно считать завершенной. При обращении на URL вашего Zabbix, вы должно автоматически аутентифицироваться без ввода пароля..

Отладка и устранение проблем c Kerberos аутентификацией в Apache

При возникновении проблем, включите режим отладки в apache2:

В файле /etc/apache2/sites-available/000-defaults.conf перед закрывающим тегом </VirtualHost> впишите:

LogLevel trace8

Перезагрузите apach, теперь в error.log апача вы сможете видеть какие ошибки выдаёт модуль Kerberos.

Для удобства используйте команду с фильтром по IP

tail -f /var/log/apache2/error.log | grep ‘ваш ип’

Для работы и диагностики с Kerberos можно использовать команды kinit и klist.

kinit – утилита для получения и кеширования Kerberos тикетов. Пример:

kinit

Утилитой klist можно посмотреть кэшированные тикеты Kerberos:

Читайте также: