Данная статья применима к:
- Astra Linux Special Edition РУСБ.10015-01 и РУСБ.10015-10 (очередное обновление 1.7)
- Astra Linux Special Edition РУСБ.10015-37 (очередное обновление 7.7)
Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6)
с установленным обновлением БЮЛЛЕТЕНЬ № 20200327SE16 - Update 5- Astra Linux Common Edition 2.12
Описание
При использовании графического киоска пользователю или группе пользователей разрешается запускать только приложения, явно указанные в их профиле. На пользователя действуют ограничения только если подкаталог с его профилем существует в каталоге /etc/fly-kiosk
или этот пользователь входит в группу, для которой существует профиль в каталоге /etc/fly-kiosk
(этот каталог по умолчанию не существует, и создается при включении режима графического киоска). Профиль пользователя или группы представляет собой набор ярлыков и настроек. Поиск профиля осуществляется по имени пользователя/группы. Например, профили для пользователя с именем user
и группы с именем group
будут найдены если существуют каталоги:
/etc/fly-kiosk/user
/etc/fly-kiosk/group
Для группы дополнительно необходимо указать что это профиль группы. В конфигурационном файле /etc/fly-kiosk/group/fly-kiosk.conf
должна быть строка IsGroup=true
пользователя.
Далее по тексту будут использованы в качестве примера имя пользователя user
и название группы group
.
Отличие от системного киоска
Графический киоск ограничивает доступ на уровне графической среды. Системный киоск, в отличие от графического киоска, ограничивает пользователя на более низком уровне — на уровне ядра системы, управляя доступом к конкретным файлам. Системный киоск обеспечивает более надежную защиту от несанкционированного доступа, чем графический. Более подробно: Системный Киоск-2: пакет parsec-kiosk2 (ограничения пользователя)
Настройки
На момент написания статьи у графического киоска есть следующие возможности:
- Автозапуск приложений для всех пользователей графического киоска. Ярлыки приложений должны размещаться в каталоге /etc/xdg/autostart и содержать строку OnlyShowIn=fly-kiosk;
- Автозапуск приложений для конкретного профиля пользователя. Ярлыки приложений должны размещаться в каталоге /etc/fly-kiosk/user/autostart;
- Размещение ярлыков на рабочем столе пользователя. Ярлыки приложений должны размещаться в каталоге /etc/fly-kiosk/user/desktop;
- Размещение ярлыков на панели задач пользователя. Ярлыки приложений должны размещаться в каталоге /etc/fly-kiosk/user/toolbar;
- Режим одного приложения. В данном режиме приложение запускается при входе на весь экран. Панель задач отсутствует, верхняя панель приложения отсутствует (т.е. закрыть "крестом" или свернуть приложение невозможно, необходимо завершать приложение его собственными средствами). При выходе из приложения текущая сессия завершается. Ярлык приложения должен лежать в каталоге /etc/fly-kiosk/user/single;
- Другие разрешенные приложения. Данные приложения нигде не будут размещены, но могут быть запущены через другие приложения. Ярлыки приложений должны лежать в каталоге /etc/fly-kiosk/user
- Конфигурационный файл /etc/fly-kiosk/user/fly-kiosk.conf имеет следующие опции:
- EditableDesktop=false. Данная опция позволяет создавать файлы на рабочем столе. Например, сохранение документа на рабочем столе;
- EditableTheme=false. Данная опция позволяет редактировать пользовательские настройки оформления, темы и т.д.;
- IsGroup=false. Данная опция указывает является ли данный профиль профилем группы.
/etc/fly-kiosk/user ├── autostart │ └── fly-vkbd.desktop ├── desktop │ └── firefox.desktop ├── single ├── toolbar │ └── start.desktop # ярлык приложения "Меню Пуск" ├── exit.desktop # нужен для отображения диалога выхода ├── fly-kiosk.conf └── fly-open.desktop # нужен для открытия документов с рабочего стола
Для отображения ярлыка приложения "Меню Пуск" на панели всегда слева от других ярлыков, создайте файл /etc/fly-kiosk/user/toolbar/.directory
со следующим содержимым:
[Desktop Entry] Name=Toolbar Type=Directory Icon=kmenuedit SortOrder=start.desktop; X-FLY-IconContext=Applications
Графическая утилита настройки
Все вышеперечисленные настройки для пользователей и групп можно выполнить с помощью графической утилиты "Политика безопасности" ("Меню Пуск" -> "Панель управления" -> "Безопасность" -> "Пользователи" или "Меню Пуск" -> "Панель управления" -> "Безопасность" -> "Группы"). В графической утилите присутствуют дополнительные возможности:
- Сохранение настроенного профиля по указанному пути. Например, для последующего распространения через системы управления конфигурациями.
- Настройка FireJail (см. Система изоляции пользовательских приложений FireJail) для выбранного приложения.
Ограничения командного интерпретатора rbash
В графическом киоске по умолчанию используется более ограниченный и безопасный командный интерпретатор rbash, из-за ограничений которого возникают следующие особенности запуска приложений через firejail:
В ярлыках приложений нельзя использовать полные пути к файлам приложений. Пример полного пути:
Exec=firejail /usr/bin/goldendict
Следует использовать только имя файла:
Exec=firejail goldendict
При необходимости можно изменить командный интерпретатор.
Для замены командного интерпретатора в файле /etc/X11/Xsession.d/02-fly-kiosk-env следует найти и закомментировать строки:
export BASH=/bin/rbash export SHELL=${BASH}