Применимо к редакции: МСВСфера 9 (ФСТЭК)

15.4. Безопасность средства контейнеризации

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

Для установки выполните команду:

$ sudo dnf install docker_security

В процессе установки пакета осуществляется остановка и запрет общесистемного демона Docker, работающего с правами root, удаляется его сокет.

Работа общесистемного демона Docker противоречит требованиям безопасности функционирования Docker в непривилегированном (rootless) режиме, поэтому администратору запрещается выполнять следующие команды:

$ sudo systemctl enable docker.service docker.socket

$ sudo systemctl start docker.service

15.4.1. Настройка программного комплекса

Для настройки уведомлений посредством корпоративной электронной почты требуется заполнить файл настроек параметров: /etc/docker_security/mail/send_mail_settings.json. С этой целью необходимо открыть в редакторе файл send_mail_settings.json и заполнить данные сервера электронной почты отправителя, почтовый адрес отправителя, почтовый адрес получателя (подразумевается администратор системы), почтовый адрес получателя копии письма (подразумевается пользователь системы) и т.д.

Пример содержимого файла send_mail_settings.json сразу после установки программного комплекса:

"smtp_server_type": "",
"smtp_server_type_comment": "Сетевой протокол сервера: smtps или smtp",
"smtp_server": "",
"smtp_server_comment": "Имя сервера отправки почты или IP-адрес. Пример: smtp.mail.ru",
"smtp_port": 465,
"smtp_port_comment": "Порт сервера отправки почты. Пример: 465",
"smtp_user": "",
"smtp_user_comment": "Имя пользователя на сервере отправки почты. Пример: name_sender@mail.ru",
"smtp_pass": "",
"smtp_pass_comment": "Пароль пользователя на сервере отправки почты. Пример: xxx123",
"sender": "",
"sender_comment": "Почтовый адрес отправителя письма. Пример: name_sender@mail.ru",
"recipient": "",
"recipient_comment": "Почтовый адрес получателя письма. Пример: name_recipient@mail.ru",
"recipient_copy": "",
"recipient_copy_comment": "Почтовый адрес получателя письма (копия письма). Пример: name_recipient_copy@mail.ru",
"authentification": "1",
"authentification_comment": "нужна ли аутентификация для отправки: 1 — нужна, 0 — не нужна"

Примечание

Некоторые SMTP-серверы ожидают совпадающих параметров smtp_user и sender.

Далее следует выполнить команду запуска скрипта подсистемы инициализации программного комплекса /etc/sbin/docker_s:

$ sudo docker_s

В процессе выполнения скрипта, администратору системы выводится на экран содержимое файла /etc/docker_security/mail/send_mail_settings.json и запрашивается подтверждение правильности заполнения.

  • Нажмите y и клавишу «Ввод» для подтверждения правильности заполнения файла send_mail_settings.json и продолжения выполнения скрипта docker_s.

  • Нажмите n и клавишу «Ввод» для прерывания выполнения скрипта docker_s. После чего заново заполните файл send_mail_settings.json.

После подтверждения правильности заполнения файла настроек send_mail_settings.json скрипт docker_s производит следующие действия:

  • копирует файл daemon.json в каталоги всех пользователей системы. Если файл уже существует, то он будет перезаписан;

  • выполняет настройку дополнительных правил аудита (формирует файл /etc/audit/rules.d/docker_users.rules и перезапускает сервис auditd);

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

Примечание

Скрипт docker_s должен завершить свою работу в штатном режиме, без ошибок.

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

Примечание

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

15.4.2. Остановка программного комплекса

Для полной остановки утилиты выполнить команду:

$ sudo docker_s –u

Примечание

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

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

$ sudo systemctl disable <Имя сервиса программного комплекса>

$ sudo systemctl stop <Имя сервиса программного комплекса>

15.4.3. Запуск программного комплекса

Примечание

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

Для полного запуска программного комплекса выполните команду:

$ sudo docker_s -s

Примечание

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

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

$ sudo systemctl enable <Имя сервиса программного комплекса>

$ sudo systemctl start <Имя сервиса программного комплекса>

15.4.4. Удаление программного комплекса

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

$ sudo dnf remove docker_security-VERSION.noarch.rpm

Будут удалены все файлы, которые были установлены в процессе установки программного комплекса.

Примечание

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