Данная статья применима к:
- Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7) с установленным обновлением БЮЛЛЕТЕНЬ № 2021-1126SE17 (оперативное обновление 1)
Введение
Для повышения безопасности работы с web-браузерами в Astra Linux Special Edition 1.7 добавлен пакет astra-docker-browser, обеспечивающий запуск web-браузеров в изолированных контейнерах docker (см. Установка и администрирование Docker в Astra Linux 1.7). Поддерживаются web-браузеры FireFox и Chromium.
Установка пакета
Пакет astra-docker-browser включен в состав основного репозитория Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7 ) начиная с оперативного обновления 2 и может быть установлен с помощью графического менеджера пакетов (см. Графический менеджер пакетов synaptic) или командой:
и установлен командой:
Создание образов для пользователей
Для пользователей, которым будет разрешено использовать браузеры в docker-е, нужно будет создать индивидуальные образы:
Управление разрешениями для пользователей
Пользователям, которым разрешено использовать запуск web-браузеров в контейнерах docker, администратором системы должны быть выданы разрешения для такого запуска (разрешение на запуск пользовательских контейнеров docker):
Управление доступом к пользовательским ресурсам
При настройках по умолчанию web-браузеру, запускаемому в пользовательском контейнере предоставляется доступ к следующим ресурсам:
- Устройство /dev/dri — графический интерфейс ядра для непривилегированных пользователей;
- Видеокамера (если в системе имеется устройство /dev/video0);
- Звуковое устройство (если в системе имеется устройство /dev/snd). Для работы со звуковым устройством также используются опции:
- -e PULSE_SERVER=unix:/tmp/pulseaudio.socket
- -e PULSE_COOKIE=/tmp/pulseaudio.cookie
- -v /tmp/pulseaudio.socket:/tmp/pulseaudio.socke
- Пользовательские данные web-браузера:
- Пользовательские каталоги конфигураций браузера;
- Пользовательский каталоги Загрузки";
- Пользовательские каталоги конфигураций браузера;
- Сетевая карта;
- Файл /etc/localtime - только чтение - параметры временной зоны.
Поскольку наличие доступа к этим ресурсам может привести к несанкционированной активности в системе, предусмотрена возможность индивидуальной настройки доступа для пользователей.
Для этого используется конфигурационный файл /etc/astra-docker-browser.conf, содержащий разрешения по передаче ресурсов, принятые по умолчанию, и индивидуальные разрешения для пользователей. Синтаксис записей в файле:
allow:<имя_пользователя>:<строка_разрешений>
Для задания разрешений, применяемых по умолчанию вместо имени пользователя используется метасимвол "*" (звездочка).
Строка разрешения состоит из символов разрешений в произвольном порядке:
- v - разрешен доступ к видеокамере;
- s - разрешен доступ к звуковому устройству;
- d - разрешен доступ к пользовательским данным web-браузера
При установке пакета всем пользователям разрешено все. Содержимое конфигурационного файла:
allow:*:vsnd
Индивидуальные разрешения для пользователей заменяют разрешения, принятые по умолчанию.
Если никакие разрешения не заданы (конфигурационный файл отсутствует или в конфигурационном файле нет ни индивидуальных разрешений для пользователя ни принятых по умолчанию разрешений, то пользователю запрещено всё).
Запуск браузера пользователем
При работе в графической сессии пользователь может использовать для запуска браузера иконку на рабочем столе (создается при включении разрешения запуска) или пункт графического меню (создается при установке пакета и недоступно до включения разрешения).
Для запуска контейнера с браузером из командной строки пользователь может использовать команду
FireFox:
astra-docker-browser firefoxChromium:
astra-docker-browser chromium