Контроль целостности файлов конфигурации Визион

1. Общая информация#

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

2. Настройка утилит отслеживания изменений конфигурационных файлов#

2.1 Инструкция для операционных систем РЕД ОС Муром 7.3, Astra Linux 1.7#

Для настройки используется утилита afick. Для получения более подробной информацмм следует обратиться к документации производителя https://redos.red-soft.ru/base/manual/redos-manual/safe-redos/afick/

Все действия производятся от имени администратора (root).

2.1.1 Включение контроля целостности#

Для включения контроля целостности следует выполнить следующие действия:

    1. Установите утилиту контроля целостности dnf install afick
    1. Добавьте список файлов и директорий для контроля в конфигурационный файл /etc/afick.conf в раздел # files to scan с необходимыми опциями
    1. Запустите утилиту с ключом --update (afick --update) для обновления и формирования базы контролируемых файлов

Регулярная проверка целостности обеспечивается запуском cron-задачи. Задача создается при установке утилиты с регулярностью раз в сутки. Результатом выполнения является сформированный отчет, который будет отправлен на электронный адрес, указанный в конфигурационном файле в секции @@define MAILTO root.

2.1.2 Периодичность запуска#

Bash-скрипт, отвечающий за проверку целостности и отправки отчета находится в /etc/cron.daily/afick_cron

Настройка периодичности проверки целостности может быть изменена в соответствии с механизмом работы cron.

2.1.3 Проверка механизма контроля целостности#

Для проверки, что контроль целостности осуществляется необходимо произвести следующие действия:

    1. Подать команду afick -k. Ожидаемый результат - отсутствие изменений
    1. Изменить контролируемый файл или создать новый в контролируемой директории
    1. Повторно подать команду afick -k. Ожидаемый результат - сообщение о нарушении целостности

После настройки и постановки файлов на контроль целостности любые переконфигурации компонентов должны происходить через службу информационной безопасности с последующим обновлением внутренней БД утилиты.

После внесения изменений в контролируемые файлы и необходимости их фиксирования необходимо от имени администратора запустить команду afick --update.

2.2 Инструкция для операционных систем Альт СП 8 р9 и СП 8 р10#

Для настройки используется утилита osec. Подробнее - в руководстве по комплексу средств защиты от Базальт.

Все действия производятся от имени администратора.

Установка утилиты производится командой apt-get install osec

2.2.1 Включение контроля целостности#

Для включения контроля целостности следует выполнить следующие действия:

    1. Проверить, что сервис контроля целостности при загрузке активирован (enabled): # systemctl is-enabled integalert. Для активации сервиса выполнить команду: # systemctl enable integalert
    1. Добавить каталоги для проверки целостности osec см. раздел 2.2.2
    1. Выполнить запуск osec: # integalert fix или сформировать контрольные суммы для измененных/новых объектов и занести их в базу данных, выполнив команду: # osec -f /etc/osec/dirs.conf -D /var/lib/osec/ Для фиксации изменений и проверки конфигурации выполнить команду: # systemctl restart osec

Проверка целостности системы при помощи osec выполняется от администратора командой integalert.

При необходимости можно настроить/изменить периодичность запуска osec.

2.2.2 Добавление/изменение каталогов для проверки целостности#

По умолчанию отслеживаются изменения в папках /bin, /sbin, /usr/bin, /usr/sbin. Для того, чтобы добавить в список или изменить список каталогов для проверки целостности, например: /bin, /sbin, /lib, /lib64, отредактируйте список каталогов, который хранится в файле /etc/osec/dirs.conf (строки, начинающиеся со знака решетка «#», игнорируются):

# vim /etc/osec/dirs.conf

После внесения изменений в файл /etc/osec/dirs.conf необходимо выполнить запуск osec.

2.2.3 Периодичность запуска#

Кроме пакета программного комплекса osec в систему устанавливается пакет osec-timerunit. Он позволяет задать способ и периодичность запуска osec (файлы /lib/systemd/system/osec.service, /lib/systemd/system/osec.timer). В пакете osec-timerunit есть файл с заданием для демона cron и конфигурационные файлы (dirs.conf).

Для проверки статуса периодического контроля целостности необходимо выполнить команду:

# systemctl status osec.timer

Для активации периодического контроля целостности необходимо выполнить команды:

# systemctl enable osec.timer
# systemctl start osec.timer

По умолчанию в osec.timer задан запуск проверки каждый день в двенадцать часов ночи. Если необходимо задавать другие периоды запуска osec, то необходимо создать файл /etc/systemd/system/osec.timer с измененными периодами и перезапустить демон systemd:

# cp /lib/systemd/system/osec.timer /etc/systemd/system/osec.timer 
# vim /etc/systemd/system/osec.timer 
# systemctl daemon-reload

2.2.4 Проверка механизма контроля целостности#

Для проведения теста необходимо авторизоваться в системе от имени администратора.

Подготовить каталог для базы данных:

# mkdir /tmp/base 
# chown osec:osec /tmp/base 
# cp -ar /var/lib/osec/* /tmp/base

Сформировать контрольные суммы объектов (список путей к ним хранится в файле /etc/osec/dirs.conf) и занести их в базу данных /tmp/base. Результат работы osec выводится на консоль, поэтому для перенаправления вывода результата в текстовый файл /tmp/report1 необходимо использовать команду:

# osec -f /etc/osec/dirs.conf -D /tmp/base/ –r >/tmp/report1

Не производя никаких изменений в системе, запустить osec повторно и вывести результат работы в текстовый файл /tmp/report2:

# osec -f /etc/osec/dirs.conf -D /tmp/base/ -r >/tmp/report2

Сравнить два результирующих файла /tmp/report1 и /tmp/report2:

# diff -u0 /tmp/report1 /tmp/report2

Два отчета должны совпадать, в консоли не должно быть выведено никаких различий.

Выполнить изменения в контролируемых файлах или директориях (добавить, удалить и тд.)

Запустить osec в режиме «только чтение» и перенаправить вывод в текстовый файл /tmp/report3:

# osec -f /etc/osec/dirs.conf -D /tmp/base/ -r > /tmp/report3

Сравнить два результирующих файла /tmp/report2 и /tmp/report3:

# diff -u0 /tmp/report2 /tmp/report3 

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

2.2.5 Порядок восстановления целостности системы#

В случае выявления нарушения целостности:

  • при проверке целостности системы командой integalert;
  • при загрузке ОС – вывод визуального оповещения с обязательным подтверждением дальнейшей загрузки ОС Система загружается в однопользовательском режиме с запросом пароля суперпользователя

Порядок восстановления: От администратора (root) выполнить просмотр лога аудита и найти нарушение целостности.

Восстановить объект с нарушенной целостностью – заменить на эталон/переустановить или пропустить при подтверждении корректности внесенного изменения в объект.

Запустить восстановление целостности системы (если система контроля целостности IMA/EVM не инициализирована, выполнить команду # integalert fix). Или сформировать контрольные суммы для измененных/новых объектов и занести их в базу данных выполнив команду:

# osec -f /etc/osec/dirs.conf –D /var/lib/osec

и перезагрузить систему.

После настройки и постановки файлов на контроль целостности - любые переконфигурации компонентов должны происходить через службу информационной безопасности с последующим обновлением внутренней БД утилиты.

3 Перечень файлов и директорий Визиона для контроля целостности#

Расположение Комментарии
/opt/skala-r/vision/.secrets_vault
/opt/skala-r/etc/vision/
/opt/skala-r/etc/vision/server/grafana/provisioning/datasources/datasources.yml
/opt/skala-r/plagent/ Исключая ./io, ./upload
/opt/skala-r/vision/bin
/opt/skala-r/vision/cert/
/opt/skala-r/vision/agent/
/opt/skala-r/vision/server/plugins/
/opt/skala-r/vision/server/vision_taskdaemon/var/
/opt/skala-r/vision/server/repo/
/opt/skala-r/vision/server/vision_venv/
/etc/nginx/
/etc/systemd/system/multi-user.target.wants/nginx.service /etc/systemd/system/multi-user.target.wants/nginx.service символическая ссылка на: в Astra - /lib/systemd/system/nginx.service в Alt - /lib/systemd/system/nginx.service в Red os - /usr/lib/systemd/system/nginx.service
/usr/sbin/nginx
/var/lib/pgsql/data/postgresql.conf /var/lib/pgsql/data/pg_hba.conf /var/lib/pgsql/data/pg_ident.conf Для Altlinux Server 8 СП p9, Altlinux Server 8 СП p10, РЕДОС 7.3
/etc/postgresql/11/main/pg_hba.conf /etc/postgresql/11/main/pg_ident.conf /etc/postgresql/11/main/postgresql.conf Для Astra Linux 1.7.3
/usr/bin/postgres
/etc/systemd/system/multi-user.target.wants/postgresql.service /etc/systemd/system/multi-user.target.wants/postgresql.service символическая ссылка на: в Astra - /lib/systemd/system/postgresql.service в Alt - /lib/systemd/system/postgresql.service в Red os - /usr/lib/systemd/system/postgresql.service
/etc/systemd/system/vision_core.service
/etc/systemd/system/vision_alertcollector.service
/etc/systemd/system/vision_taskdaemon.service
/etc/systemd/system/grafana.service
/etc/systemd/system/victoriametrics_st.service
/etc/systemd/system/vmalert_st.service
/etc/systemd/system/alertmanager.service
/etc/systemd/system/snmp_notifier.service
/etc/systemd/system/vision_vmagent_proxy.service /etc/systemd/system/vision_vmagent_agent.service /etc/systemd/system/plagent.service Устанавливаются только при установке на узел агента и/или плагента
/etc/systemd/system/vision_*.service