Рубрика:
Карьера/Образование /
Пятая пара
|
Facebook
Мой мир
Вконтакте
Одноклассники
Google+
|
ЛЕОНИД НОСОВ, к.ф.-м.н., доцент, Сыктывкарский государственный университет имени Питирима Сорокина, заведующий кафедрой информационной безопасности, Сыктывкар, nosov@syktsu.ru
АНДРЕЙ ВОЛКОВ, Сыктывкарский государственный университет имени Питирима Сорокина, выпускник кафедры информационной безопасности, Сыктывкар, ghost_32@mail.ru
Proxmox и OpenVPN Резервирование и безопасность виртуальной инфраструктуры
Рассмотрен подход к построению защищенной виртуальной инфраструктуры на основе свободных решений Proxmox, OpenVPN и DRBD. Показана применимость данного решения для защиты информационных систем. Проведен анализ защищенности развернутой виртуальной инфраструктуры
Одним из современных направлений повышения эффективности использования информационных систем является переход к Cloud computing, который в России принято переводить как «облачные вычисления», хотя уместнее употреблять термин «облачные технологии». Дословный перевод «облачные вычисления» не отражает сущность современных процессов удаленного обслуживания пользователей информационных систем, где предполагается весь комплекс информационных услуг, включая хранение, поиск и передачу информации, обеспечение ее безопасности и многое другое, а не только удаленное выполнение приложений.
Облачные технологии – это подход к размещению, предоставлению и потреблению приложений и компьютерных ресурсов, при котором они становятся доступны через интернет в виде сервисов, потребляемых на платформах и устройствах. Облачные технологии обладают рядом достоинств, например экономичность, легкость развертывания, многопользовательская архитектура. Все это способствует их быстрому распространению, а также предполагает весь комплекс информационных услуг, перечисленных ранее.
Аналитическая компания Gartner в 2016 году опубликовала «магический квадрант» инфраструктуры серверной виртуализации [2]. В нем представлены лишь коммерческие предложения вендоров, хотя фактически все они, кроме VMware и Microsoft, реализованы на базе открытых технологий, таких как Xen, KVM, OpenVZ и LXC. Русскоязычный анализ отчета представлен в работе [7].
Поддержка Proxmox, DRBD и OpenVPN реализована в ряде ОС, входящих в реестр российских программ |
Существуют разные точки зрения и подходы к организации обмена информацией и обеспечения ее безопасности, например [4, 5, 8, 10]. Одним из них может являться создание защищенного облачного сервиса на основе использованием свободного программного обеспечения, что особенно актуально в тренде импортозамещения.
Целью настоящей работы является представление варианта реализации такого защищенного облачного сервиса.
Развертывание облачного сервиса
Построение защищенного облачного сервиса предлагается выполнить на основе Proxmox Virtual Environment (Proxmox VE). Это система виртуализации с открытым исходным кодом, основанная на Debian GNU/Linux. Для обеспечения резервирования предлагается использование DRBD (Distributed Replicated Block Device – «распределенное реплицируемое блочное устройство»), а для защиты каналов связи – OpenVPN [1, 6].
Общая схема реализации облачного сервиса при этом может выглядеть так, как показано на рис. 1.
Рисунок 1. Общая схема предлагаемого решения для облачного сервиса
Для создания защищенного облачного сервиса нужно:
- установить и настроить Proxmox;
- установить и настроить DRBD;
- создать кластер из серверов;
- установить и настроить OpenVPN;
- установить виртуальную машину;
- произвести защиту среды виртуализации средствами Proxmox;
- произвести тестирование на проникновение.
Доступ к веб-интерфейсу Proxmox находится по адресу: https://IP_сервера:8006, в рассматриваемом случае первый сервер – https://192.168.153.128:8006, второй сервер – https://192.168.153.129:8006. Управление системой осуществляется через веб-интерфейс.
Для реализации облачного решения необходим кластер высокой доступности. Используем отказоустойчивое хранилище из свободных дисков каждого сервера. На первом жестком диске каждого сервера будет операционная система, а на втором – хранилище виртуальных машин. Настроим DRBD так, чтобы данные на вторых дисках были одинаковы, что позволит создать сетевой рейд первого уровня. Для создания кластера высокой доступности необходим режим Primary – Primary. Используем кластерную файловую систему OCFS2.
После настройки конфигурационных файлов запускаем DRBD на двух серверах:
# /etc/init.d/drbd start
[ok] Starting drbd (via systemctl): drbd.service.
На двух серверах инициализируем метаданные:
# drbdadm create-md r0
New drbd meta data block successfully created.
Далее запустим ресурс и инициализируем выполнение первой репликации, только на первом узле:
# drbdadm up r0
# drbdadm -- --overwrite-data-of-peer primary r0
Чтобы проверить синхронизацию серверов, необходимо ввести следующую команду:
# drbdadm status
В конфигурационном файле описываем инсталляцию из двух узлов, их адреса и порты, на которых доступны службы. После того как конфигурация кластера описана, можно создать файловую систему:
# /etc/init.d/o2cb start
# /etc/init.d/o2cb online
# mount -t ocfs2 /dev/drbd0 /mnt
После можно переводить второй сервер в статус Primary:
# drbdadm primary r0
Установка виртуальных машин производится через веб-интерфейс Proxmox: указывается узел, на котором будет установлена виртуальная машина, ID и название виртуальной машины, выбираются тип операционной системы, ISO-образ установочного диска операционной системы, размер жесткого диска, формат и место расположения жесткого диска, количество ядер процессора для виртуальной машины, объем оперативной памяти. Настраивается сетевой интерфейс виртуальной машины: режим работы, модель, MAC-адрес, пропускная способность.
Настроенную виртуальную машину можно запустить. При первом запуске будет произведена установка операционной системы с указанного в настройках ISO-образа. После этого виртуальная машина готова для использования.
Доступ к виртуальной машине осуществляется с помощью одного из протоколов удаленного доступа, в зависимости от установленной операционной системы, через установленное VPN-соединение на базе OpenVPN [6].
Требования регуляторов
К недостаткам данного решения можно отнести то, что свободные реализации Debian, Proxmox, DRBD и OpenVPN не сертифицированы, что затрудняет их применение в государственных информационных системах (ГИС) и информационных системах персональных данных (ИСПДн) [3, 9]. Тем не менее можно рассмотреть основные меры по защите среды виртуализации на базе нормативных документов ФСТЭК (см. таблицу 1). Приведены только те требования, которые могут быть реализованы в данном решении.
Таблица 1. Выполнение базовых требований 17 и 21 приказов ФСТЭК в предлагаемом решении
Требование 17 и 21 приказов ФСТЭК (Защита среды виртуализации) |
Реализация требований в предлагаемом решении |
Идентификация и аутентификация субъектов доступа и объектов доступа в виртуальной инфраструктуре, в том числе администраторов управления средствами виртуализации (ЗСВ.1) |
В Proxmox можно добавлять пользователей и добавлять им соответствующие разрешения с помощью соответствующих групп. Также идентификация происходит с помощью Linux PAM standart authentification или Proxmox VE authentification server (см. рис. 2) |
Управление доступом субъектов доступа к объектам доступа в виртуальной инфраструктуре, в том числе внутри виртуальных машин (ЗСВ.2) |
Для управления субъектов доступа к объектам доступа используются роли пользователей, которые можно изменять, а также дополнительная авторизация на виртуальных машинах (см. рис. 3) |
Регистрация событий в виртуальной инфраструктуре (ЗСВ.3) |
Происходит во вкладках «Задачи» (см. рис. 4) и Cluster log (см. рис. 5) |
Управление (фильтрация, маршрутизация, контроль соединения, однонаправленная передача) потоками информации между компонентами виртуальной инфраструктуры, а также по периметру виртуальной инфраструктуры (ЗСВ.4) |
Выполняется с помощью брандмауэра Proxmox (см. рис. 6). Брандмауэр Proxmox разделен на три зоны: брандмауэр кластера, брандмауэр сервера, брандмауэр виртуальной машины. Для каждой зоны можно определить правила брандмауэра для входящего и/или исходящего трафика |
Управление перемещением виртуальных машин (контейнеров) и обрабатываемых на них данных (ЗСВ.6) |
Благодаря тому, что был настроен кластер высокой доступности, на сервере возможна живая миграция виртуальных машин между узлами (см. рис. 7) |
Резервное копирование данных, резервирование технических средств, программного обеспечения виртуальной инфраструктуры, а также каналов связи внутри виртуальной инфраструктуры (ЗСВ.8) |
Резервирование происходит в настраиваемом автоматическом режиме: выбор узлов, где находятся виртуальные машины; хранилище, где будут находиться резервные копии; день недели и время запуска резервирования; тип сжатия; режим, а также есть возможность посылать email после окончания резервирования. Также общее хранилище под управлением DRBD является дополнительным решением в резервировании |
Рисунок 2. Типы идентификации, поддерживаемые в Proxmox
Рисунок 3. Роли пользователей, поддерживаемые в Proxmox
Рисунок 4. Регистрация запущенных задач в системе Proxmox
Рисунок 5. Журнал событий Cluster log в системе Proxmox
Рисунок 6. Брандмауэр системы Proxmox: интерфейс настройки
Рисунок 7. Миграция виртуальных машин между узлами
Тестирование
Проведем тестирование на проникновение для представленного облачного сервиса. Для этого будем использовать операционную систему Kali Linux 2.0 и программу Armitage. Порядок использования и инструкции к Kali Linux и средствам анализа защищенности, таким как Nmap, Metasploit и т.п., можно найти на интернет-ресурсе «Информационная безопасность и защита информации» (https://codeby.net).
Для проведения тестирования в нашем случае используем следующие IP-адреса машин: первый сервер – 192.168.153.128, второй сервер – 192.168.153.129 и виртуальная машина с установленной операционной системой Windows XP – 192.168.153.132 (см. рис. 8). В результате сканирования получаем список возможных уязвимостей. На рис. 9 фраза «The target is vulnerable.» означает, что найдена уязвимость.
Рисунок 8. Проверка группы атак на виртуальную машину средствами Armitage
Рисунок 9. Найденные уязвимости виртуальной машины
В процессе выполнения тестирования были получены следующие результаты:
- Для первого и второго сервера:
- открытые порты: TCP – 22 (SSH), TCP – 3128 (SPICE proxy);
- уязвимости – не обнаружены;
- дополнительные решения: изменены стандартные порты подключения.
- Для виртуальной машины Windows XP:
- открытый порт: TCP – 445;
- найдена уязвимость по порту 445;
- решения: были установлены последние обновления и закрыт порт 445.
В итоге было проведено полное тестирование на проникновение системы, обнаружена уязвимость виртуальной машины, а также были приняты меры по устранению выявленных уязвимостей.
Таким образом, в работе рассмотрены подход к построению защищенного облачного решения на базе Proxmox, DRBD и OpenVPN и применимость предложенного решения для защиты ГИС и ИСПДн.
Поддержка Proxmox, DRBD и OpenVPN реализована в ряде операционных систем, входящих в реестр российских программ, что позволяет надеяться на возможное использование предложенного решения для защиты ГИС и ИСПДн в скором будущем.
- Proxmox VE Administration Guide [Электронный ресурс]. URL: https://pve.proxmox.com/pve-docs/pve-admin-guide.html.
- Thomas J. Bittman, Philip Dawson, Michael Warrilow Magic Quadrant for x86 Server Virtualization Infrastructure [Электронный ресурс] // Gartner. URL: https://www.gartner.com/doc/3400418/magic-quadrant-x-server-virtualization.
- Бойцов И. Защищаем виртуальную инфраструктуру по требования 21 и 17 приказов ФСТЭК // SecurityLab.ru by Positive Technologies [Электронный ресурс]. URL: http://www.securitylab.ru/blog/personal/ivanboytsov/31580.php.
- Буров А.А., Гольчевский Ю.В. Обеспечение конфиденциальности и доступности каналов связи в организации с территориально распределенной структурой // «Проблемы информационной безопасности. Компьютерные системы», № 2, 2014 г. – С. 7-18.
- Докучаев В.А. Практикум по дисциплине Сетевая безопасность и ее планирование / В.А. Докучаев, М.Г. Кондратьев, И.А. Крупнов, В.В. Маклачкова, С.С. Мытенков, А.В. Шведов. – М.: Издательство: Московский технический университет связи и информатики, 2016. – 28 с.
- Дрябжинский С. Объединение узлов Proxmox в кластер при помощи OpenVPN [Электронный ресурс] // Хабрахабр. URL: https://habrahabr.ru/post/251541.
- Колесов А. Серверная x86-виртуализация: стабильное развитие почти без неожиданностей [Электронный ресурс] // PCWEEK Инфраструктурные решения/ЦОДы. URL: https://www.weekit.ru/infrastructure/article/detail.php?ID=190887.
- Корсунский А.С., Масленникова Т.Н., Шумилов С.С., Лучков Н.В. Защищенный облачный сервис для корпоративных пользователей. // Наука и образование в современном обществе: вектор развития. Сборник научных трудов по материалам Международной научно-практической конференции. – М.: АР-Консалт, 2014. – С. 9-10.
- Об утверждении состава и содержания организационных и технических мер по обеспечению безопасности персональных данных при их обработке в информационных системах персональных данных: Приказ ФСТЭК России от 1 февраля 2013 г., № 21 // «Российская газета», № 107, 22.05.2013.
- Ушаков Д.В. Современная защита от сетевых угроз – безопасность реальна? // Системы высокой доступности. 2011. Т. 7, № 2. – С. 116-121.
Ключевые слова: безопасность, облачный, сервер, резервирование, услуга, облако, сервис, виртуализация, кластер, safety, cloudy, server, reservation, service, cloud, virtualization, cluster, Proxmox, OpenVPN.
Facebook
Мой мир
Вконтакте
Одноклассники
Google+
|