Научная статья на тему 'Анализ методов и средств организации инфраструктуры информационной безопасности с использованием системы управления конфигурацией'

Анализ методов и средств организации инфраструктуры информационной безопасности с использованием системы управления конфигурацией Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
198
25
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ИНФРАСТРУКТУРА / СИСТЕМА УПРАВЛЕНИЯ КОНФИГУРАЦИЕЙ / СОСТОЯНИЕ СИСТЕМЫ / БЕЗОПАСНОСТЬ / ПРОГРАММНЫЙ КОМПЛЕКС / INFRASTRUCTURE / CONFIGURATION MANAGEMENT SYSTEM / SYSTEM STATE / SECURITY / SOFT WARE PACKAGE

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Корягин Сергей Андреевич, Грицкевич Евгений Владимирович

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

ANALYSIS OF METHODS AND MEANS OF THE ORGANIZATION OF THE INFORMATION SECURITY INFRASTRUCTURE USING CONFIGURATION MANAGEMENT SYSTEM

The organization of the information security infrastructure using the configuration management system is analyzed, which allows to reduce maintenance work, accelerate the installation, configuration of information and technical services and software on virtual and physical servers. An analytical review and comparison of the most common such systems is given, taking into account the characteristics directly related to the safe storage of information.

Текст научной работы на тему «Анализ методов и средств организации инфраструктуры информационной безопасности с использованием системы управления конфигурацией»

УДК 004.056

АНАЛИЗ МЕТОДОВ И СРЕДСТВ ОРГАНИЗАЦИИ ИНФРАСТРУКТУРЫ ИНФОРМАЦИОННОЙ БЕЗОПАСНОСТИ С ИСПОЛЬЗОВАНИЕМ СИСТЕМЫ УПРАВЛЕНИЯ КОНФИГУРАЦИЕЙ

Сергей Андреевич Корягин

Сибирский государственный университет геосистем и технологий, 630108, Россия, г. Новосибирск, ул. Плахотного, 10, магистрант кафедры фотоники и приборостроения, тел. (999)452-12-45, e-mail: [email protected]

Евгений Владимирович Грицкевич

Сибирский государственный университет геосистем и технологий, 630108, Россия, г. Новосибирск, ул. Плахотного, 10, кандидат технических наук, доцент, доцент кафедры информационной безопасности, тел. (383)343-91-11, e-mail: [email protected]

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

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

ANALYSIS OF METHODS AND MEANS OF THE ORGANIZATION OF THE INFORMATION SECURITY INFRASTRUCTURE USING CONFIGURATION MANAGEMENT SYSTEM

Sergey A. Koryagin

Siberian State University of Geosystems and Technologies, 10, Plakhotnogo St., Novosibirsk, 630108, Russia, Graduate, Department of Photonics and Device Engineering, phone: (999)452-12-45, e-mail: [email protected]

Evgenij V. Gritskevich

Siberian State University of Geosystems and Technologies, 10, Plakhotnogo St., Novosibirsk, 630108, Russia, Ph. D., Associate Professor, Department of Information Security, phone: (383)343-91-11, e-mail: [email protected]

The organization of the information security infrastructure using the configuration management system is analyzed, which allows to reduce maintenance work, accelerate the installation, configuration of information and technical services and software on virtual and physical servers. An analytical review and comparison of the most common such systems is given, taking into account the characteristics directly related to the safe storage of information.

Key words: infrastructure, configuration management system, system state, security, soft ware package.

Введение

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

Целью работы является подробный обзор наиболее перспективной системы управления конфигурацией для управления инфраструктурой безопасности.

Для достижения цели были поставлены следующие задачи:

• рассмотрение понятия системы управления конфигурацией;

• обзор и сравнение актуальных систем управления конфигурацией;

• выбор и подробный обзор наиболее перспективной системы.

Методы

Система управления конфигурацией - это программный комплекс, ядром которого является специализированное программное обеспечение, поддерживающее централизованное управление множеством разрозненных операционных систем различного типа, их конфигурированием, функционированием и взаимодействием составляющих программных компонентов. При использовании системы управления конфигурацией наиболее важным представляется соблюдение принципа минимального выполнения операций на конечных узлах. Основное управление осуществляется с мастерхоста (master-host, masterhost, master-хост). При этом вся инфраструктура, её внутреннее взаимодействие, настройки программного обеспечения могут быть описаны в нескольких файлах [1].

В настоящее время наиболее популярными системами управления конфигурацией являются:Лш1Ые, Chef, Puppet и SaltStack.

Все они являются системами с открытым исходным кодом (OpenSourœ). Ранее считалось, что системы OpenSource проигрывают проприетарным программным продуктам с точки зрения безопасности. В настоящее время ситуация кардинально изменилась. Участники OpenSource-сообшеств оперативно находят и устраняют уязвимости, в то время как в проприетарном программном обеспечении они могут оставаться незамеченными в течение долгого времени [2].

В качестве примера OpenSource-системы можно рассмотреть систему Ansible. К одному из её существенных преимуществ относится использование в

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

Рис. 1. Структурная схема взаимодействия управляющего хоста системы АшМес подчинёнными подсистемами

В Ansible (обозначение «ManagementNode» на рис.1можно перевести как «управляющий узел») управление подчинёнными хостами происходит через файлы состояния «playbooks>rn список групп хостов «inventory» [3]. Команды подчинённым системам отправляются с помощью протокола ssh. Недостатками Ansible являются плохая поддержка операционной системы Windows, более трудозатратное добавление новых подчинённых операционных систем и тестирование написанных состояний, а также небольшое сообщество разработчиков [4,5].

К другим примерам систем управления конфигурацией с открытым программным кодом можно отнести системы Chef и Puppet. Их преимуществом является наличие большой базы готовых модулей и рецептов для настройки подчинённых операционных систем [6]. Стоит отметить, что Puppet взаимодействует с подчинёнными системами через ssl-соединение поверх порта 8140/TCP

[7,8]. Среди недостатков стоит выделить использование для программной реализации недостаточно популярного языка исполнения Ruby [6,7], высокий порог вхождения для начала работы и необходимость оптимизации готовых модулей, получаемых из системных баз для учёта особенностей каждого конкретного потребителя.

Наиболее перспективным инструментом управления конфигурацией представляется система SaltStack, которая обладает рядом значительных преимуществ перед остальными системами. Одним из них является, как и для системы Ansible, использование языка разработки Python. Стоит выделить лёгкую масштабируемость - добавление новой подчинённой системы происходит проще, чем при использовании других систем контроля версий. Система может работать не только в режиме master, но и в режиме masterless (то есть при отсутствии master-хоста), а также в режиме syndic (подчинённая система является master-хостом для других подчинённых систем, за счёт чего выстраивается иерархическая структура). SaltStack для общения с подчинёнными системами использует не ssh-протокол, используемый в остальных системах, а протокол ZeroMQ (ssh-протокол данном случае применяется только для подключения подчинённой системы). В рассматриваемый системный продукт входит качественная система внутреннего аудита. Среди недостатков стоит выделить высокий порог вхождения и, в определённой степени, необходимость составления отчётов.

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

Поэтому представляется целесообразным более подробно рассмотретьос-новные понятия и принципы работы данного программного комплекса.

С точки зрения системы SaltStack все машины делятся на 2 типа - saltmaster (машины, с которых ведётся управление) и salt-minion (управляемые машины). Для взаимодействия друг с другом на них должны быть запущенны соответствующие процессы. Если по каким-то причинам на подчинённой системе нельзя установить salt-minion, команды для управления могут исполняться по ssh-протоколу путём установки лёгкой версии salt-minion-а через ssh-соединение. При работе в syndic-режиме salt-masterможет являться salt-minion, а при работе в masterless-режиме salt-minionуправляет сам собой [9].

В рассматриваемой системе существует понятие salt-state (SLS) - конфигурационные файлы, написанные на языке YAML. Они подобны playbooks в Ansible (их аналогами являются manifests в Puppet, и cookbooks в Chef). Термином Formulas называются вызовы к модулям состояний (statemodules) для достижения определенного результата. Они описывают, как должно выглядеть состояние системы, если формула применена. Формулы являются заранее описанными состояниями. Понятие Templates обозначает шаблоны, содержащие обобщённые описания формул и позволяющие применять типовые формулы для различных операционных систем с учетом их различий. Термин

Grains относится к информации о системе, генерируемой при подключении salt-minion-а. Понятие Pillars определяет защищённые хранилища информации, описывающие параметры системы, которые применяются при выполнении SLS-файлов [10].

Salt-master аутентифицирует salt-minion, используя открытый ключ шифрования и аутентификацию. Когда salt-minion впервые запускается, он генерирует криптографический ключ и пытается подключиться к salt-master. Чтобы salt-minion смог принимать команды от salt-master, он должен быть принят последним. Для использования в SaltStack подключения ssh необходимо создать специальный реестровый roster-file, имеющий вид «hostname: ip_address». Для удаленного выполнения команд, таким образом, не требуется установки saltminion. Его сжатая копия автоматически устанавливается на подчиняемую систему при установлении соединения.

Машины типа salt-minion подключаются и общаются с машинами типа salt-master по портам 4505\4506 TCP [9,11] (рис. 2).

salt-master

4505/ТСР

4506/ТСР

[ Publisher ]

Request server

2

Salt-minions

Рис. 2. Схема взаимодействия управляющего salt-master с подчинёнными salt-minion

Master аутентифицирует minion используя открытый ключ шифрования и аутентификацию. Когда minion впервые запускается, он генерирует криптографический ключ и пытается подключиться к master. Чтобы minion смог принимать команды от master, он должен быть принят master. Чтобы использовать salt-ssh подключение необходимо создать roster-file, имеющий вид «hostname: ip_address». Для удаленного выполнения команд, таким образом, не требуется установки salt-minion. Его сжатая копия автоматически устанавливается на подчиняемую систему при установлении соединения.

Результаты

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

Заключение

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

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Система управления конфигурацией [Электронный ресурс]. - Режим доступа : Ьйр://х§и.ги/,шй/Система_управления_конфигурацией.

2. Безопасность систем с открытым исходным кодом [Электронный ресурс]. - Режим доступа : http://citforum.ru/security/articles/open_source/.

3. Обзор: Puppet, Chef, Ansible, SaltStack [Электронный ресурс]. - Режим доступа : https://habrahabr.ru/post/211306/.

4. Jesse Keating Mastering Ansible-Packt Publishing, 1 edition, 2015-236 с.

5. Lorin Hochstein, Rene Moser Ansible: Up and Running - ORelly Media, 2 edition, 2017. - 430 с.

6. Earl Waud Mastering Chef Provisioning -Packt Publishing, 1 edition, 2016. - 262 с.

7. Martin Alfke, Felix Frank Puppet 5 Essentials - Packt Publishing, 3 edition, 2017. - 262 с.

8. Thomas Uphill, John Arundel Puppet Cookbook - Packt Publishing, 3 edition, 2015. -

338 с.

9. Colton Myers Learning SaltStack- Packt Publishing, 2015. - 158 с.

10. Christer Edwards Into The Salt Mine Documentation [Электронный ресурс]. - Режим доступа : https://intothesaltmine.readthedocs.io/en/latest/.

11. SaltStackTutorial [Электронный ресурс]. - Tutorials Point - Режим доступа : https://www.tutorialspoint.com/saltstack/saltstack_tutorial.pdf.

© С. А. Корягин, Е. В. Грицкевич, 2018

i Надоели баннеры? Вы всегда можете отключить рекламу.