Анализ и оптимизация журналирования в Journald для повышения безопасности linux-систем

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

Рубрика Программирование, компьютеры и кибернетика
Вид статья
Язык русский
Дата добавления 08.12.2024
Размер файла 2,9 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Российский государственный университет нефти и газа (НИУ)

имени И.М. Губкина

Анализ и оптимизация журналирования в Journald для повышения безопасности linux-систем

Кудряшов М.И. студент

курс, факультет «Комплексная безопасность ТЭК»

Аннотация

Статья посвящена важности журналирования в операционных системах Linux для обеспечения безопасности и надежности системы. Рассмотрены ключевые механизмы journald, включая журнал событий, структурированный формат записей, индексацию и фильтрацию, автоматическое сжатие и ротацию, а также представлены два метода проверки и обеспечения целостности данных в файлах журнала.

Ключевые слова: Журналирование, Linux, Journald, GnuPG, Хэш- функции, Цифровые подписи, Целостность данных

журналирование операционный linux безопасность

Annotation

The article is devoted to the importance of logging in Linux operating systems to ensure the security and reliability of the system. The key mechanisms of the journal are considered, including the event log, structured record format, indexing and filtering, automatic compression and rotation, and two methods for verifying and ensuring the integrity of data in log files are presented.

Keywords: Logging, Linux, Journal, GnuPG, Hash functions, Digital signatures, Data integrity

Журналирование в операционных системах Linux имеет важное значение для обеспечения безопасности и надежности системы. Этот механизм играет решающую роль в сборе, хранении и анализе информации о событиях, происходящих в системе [1].

Обзор и анализ системы журналирования journald на ALT Linux

Компонент journald входит в состав systemd и отвечает за ведение журналов. systemd, в свою очередь, управляет службами: запускает и поддерживает их работу [2].

Далее будет приведена структурная схема, которая позволит увидеть взаимосвязь systemd с journald и его компонентами.

Рисунок 1. Структурная схема system-journald systemd - это системный менеджер и менеджер служб для операционных систем Linux.

systemd.journal-fields - специальные поля журнала. Можно сказать, что это набор структурированных метаданных, собираемых systemd-journald для каждого сообщения в журнале [3].

Библиотека libsystemd предоставляет функции, позволяющие взаимодействовать с различными интерфейсами, предоставляемыми менеджером служб systemd, а также различные другие функции и константы, полезные для реализации сервисов в целом [4].

sd-joumal - API для отправки записей журнала в журнал и запросов к ним из журнала, sd-journal.li является частью libsystemd и предоставляет API для отправки записей журнала и запросов к ним [5].

Команда journaled предоставляет доступ к содержимому журнала systemd, ведущего записи с помощью службы systemd-journald.service.

Файл конфигурации joumald.conf предназначен для настройки параметров и поведения systemd-journald. Он позволяет управлять хранением и обработкой данных журналирования. Конфигурация по умолчанию устанавливается во время компиляции, поэтому настройка необходима только тогда, когда необходимо отклониться от этих значений по умолчанию [6].

Теперь хотелось бы сказать про сами механизмы, обеспечивающие эффективное журналирование и анализ событий в journald, в общем формате, чтобы сложилось понимание работы данной системы [7]:

Журнал событий (Event Logs)

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

Структурированный формат записей (Structured Record Format)

joumald использует структурированный формат записей, что облегчает

анализ и фильтрацию информации в журналах, упрощая процесс поиска конкретных событий.

Индексация и фильтрация (Indexing and Filtering)

Механизмы journald поддерживают индексацию и фильтрацию записей,

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

Автоматическое сжатие и ротация (Automatic Compression and Rotation)

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

Централизованный доступ и аудит (Centralized Access and Auditing)

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

Методы проверки и обеспечения целостности данных

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

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

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

Создадим хэш-сумму для всех файлов системного журнала и произведем запись в файл, выполнив команду sha256sum /var/log/journal/*/*journal > hashes.txt

Рисунок 2. Создание хэш-суммы для файлов системного журнала Далее выполним команду проверки контрольной суммы sha256sum -c hashes.txt

Рисунок 3. Проверка целостности журналов

Рисунок 4. Неудачная аутентификация пользователя

Как только будет выполнена неудачная аутентификация пользователя, журналы должны будут дополниться и тогда контрольные суммы не совпадут.

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

Рисунок 5. Предупреждение о несовпадении контрольных сумм

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

Теперь для наглядной проверки целостности данных журналов, используя цифровую подпись, создадим файл joumal.txt, который будет содержать зафиксированные данные журнала за последний час, используем для этого команду journalctl --since "1 hour ago" > joumal.txt

Рисунок 6. Создание файла с данными журнала за последний час

После этого создадим цифровую подпись для данного файла, выполнив команду gpg -- detach-sign -ojournal.txt.sigjoumal.txt.

Рисунок 7. Создание цифровой подписи для файла

Проверим наличие цифровой подписи и ее действительность, введя следующую команду gpg --verify journal.txt.sig journal.txt.

Рисунок 8. Проверка создания и действительности цифровой

подписи

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

Рисунок 10. Повторная проверка цифровой подписи

Заключение

После проведенного анализа joumald и его компонентов, разобранных методов обеспечения безопасности данных журнала, можно сделать вывод.

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

Использованные источники

Греков, В. С. Перспективы кибербезопасности в нефтегазовой отрасли / В. С. Греков, А. Г. Уймин // Губкинский университет в решении вопросов нефтегазовой отрасли России : Тезисы докладов VI Региональной научно-технической конференции, посвященной 100-летию М.М. Ивановой, Москва, 19-21 сентября 2022 года. - Москва: Российский государственный университет нефти и газа (национальный исследовательский университет) имени И.М. Губкина, 2022. - С. 1108-1109.

Документация archlinux: Описание systemd-joumald.service.

[Электронный ресурс] URL: https://man.archlinux.org/man/systemd-

journald.service.8.en (дата обращения: 08.12.2023).

Документация archlinux: Описание systemdjournal-fields.

[Электронный ресурс] URL: https://man.archlinux.org/man/systemdjournal- fields.7.en (дата обращения: 08.12.2023).

Документация archlinux: Описание libsystemd [Электронный

ресурс] URL: https://man.archlinux.org/man/libsystemd.3.en (дата обращения:

.Документация archlinux: Описание sd-journal [Электронный

ресурс] URL: https://man.archlinux.org/man/sd-journal.3.en (дата обращения:

.Документация archlinux: Руководство пользователя journald.conf / [Электронный ресурс] URL: https://man.archlinux.org/man/iournald.conf.5.en (дата обращения: 08.12.2023).

Radu Gheorghe Tutorial: Logging with journald / Radu Gheorghe [Электронный ресурс] // DEV: [сайт]. -- URL: https://dev.to/sematext/tutorial- logging-with-journald-50l8 (дата обращения: 7.12.2023).

Размещено на Allbest.ru/


Подобные документы

  • Основные понятия операционных систем. Современное оборудование компьютера. Преимущества и недостатки операционной системы Linux. Функциональные возможности операционной системы Knoppix. Сравнительная характеристика операционных систем Linux и Knoppix.

    реферат [1,5 M], добавлен 17.12.2014

  • Понятие и сущность операционных систем, особенности их возникновения. История создания операционной системы Linux, ее основные характеристики, сетевые возможности. Анализ бизнес-модели производства и распространения "свободного" программного обеспечения.

    реферат [35,8 K], добавлен 05.04.2010

  • Особенности операционных систем Linux. Аппаратно-программные требования для работы с лабораторным практикумом. Настройка виртуальной машины. Аналоги программ WINDOWS в Mandriva. Разграничение прав доступа. Настройка безопасности и политика паролей.

    курсовая работа [1,8 M], добавлен 06.11.2014

  • Основные моменты истории операционных систем, связывающих аппаратное обеспечение и прикладные программы. Характеристика операционной системы Microsoft Windows Seven, анализ операционной системы Linux. Преимущества и недостатки каждой операционной системы.

    курсовая работа [63,0 K], добавлен 07.05.2011

  • Linux – одна из наиболее популярных распространяемых бесплатно операционных систем. Работа с базовым ограниченным набором программ по умолчанию. Характеристика основных программ, которые расширяют возможности операционной системы Linux для пользователя.

    презентация [486,5 K], добавлен 09.10.2013

  • История создания и общая характеристика операционных систем Windows Server 2003 и Red Hat Linux Enterprise 4. Особенности установки, файловых систем и сетевых инфраструктур данных операционных систем. Использование протокола Kerberos в Windows и Linux.

    дипломная работа [142,7 K], добавлен 23.06.2012

  • Механизмы шифрования данных в ОС LINUX MINT. Реализация FDE в интерфейсе инсталлятора. Одно из главных достоинств утилиты CryptKeeper. Создание учётной записи через терминал. Графический интерфейс прав доступа. Резервное копирование данных программы.

    курсовая работа [2,9 M], добавлен 11.12.2014

  • Назначение серверных операционных систем. Сравнительный анализ серверных операционных систем Windows и Linux и сравнение их по важным показателям таким как: пользовательский графический интерфейс, безопасность, стабильность работы, возможность и цена.

    курсовая работа [50,1 K], добавлен 03.07.2012

  • Linux - ядро операционной системы с монолитной архитектурой. Прародители операционной системы Linux, ее стабильные и экспериментальные версии. Процесс внедрения Linux и свободного программного обеспечения в школах и государственных учреждениях России.

    реферат [18,2 K], добавлен 19.01.2013

  • ОС Linux - название Unix-подобных операционных систем, основанных на одноимённом ядре. Дистрибутив Lubuntu 12: интерфейс, командная строка, основные программы, входящие в состав пакета. Работа с сетью, конфигурированием и администрированием системы.

    методичка [2,0 M], добавлен 28.10.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.