Подробный гайд: Режим киоска на Astra Linux с Firefox

Гайд по настройке Firefox в режиме киоска на Astra Linux: автологин, блокировка системы, политики безопасности для инфопанелей и терминалов

2026.04.28                  


Подробный гайд: Режим киоска на Astra Linux с FirefoxПодробный гайд: Режим киоска на Astra Linux с Firefox Данный гайд описывает настройку полнофункционального режима киоска в Astra Linux (Common Edition 1.7/1.8 и Special Edition) с использованием браузера Firefox (по умолчанию firefox-esr). Конфигурация обеспечивает автоматический вход, запуск браузера в полноэкранном режиме, блокировку переключения терминалов, отключение горячих клавиш и ограничение настроек браузера.

Важно:

  • Перед внесением изменений создайте резервную копию конфигурационных файлов. На Astra Linux Special Edition учитывайте активные механизмы мандатного контроля доступа (MAC) и fly-dm.

Шаг 0. Подготовка системы

sudo apt update
sudo apt install x11-xserver-utils

Убедитесь, что установлен Firefox ESR (в Astra поставляется по умолчанию):

firefox-esr --version

Если используется обычная сборка Firefox, замените firefox-esr на firefox в скриптах ниже.


Шаг 1. Создание пользователя киоска

sudo useradd -m -s /bin/bash kiosk
sudo passwd -d kiosk  # Удаление пароля для автологина (опционально)

Для безопасности можно задать сложный пароль и использовать autologin без пароля через менеджер входа.


Шаг 2. Настройка автологина

Для Astra Linux CE (LightDM)

Создайте файл /etc/lightdm/lightdm.conf.d/50-kiosk.conf:

[Seat:*]
autologin-user=kiosk
autologin-user-timeout=0
user-session=kiosk
greeter-show-manual-login=false

Для Astra Linux SE (Fly-DM)

Отредактируйте /etc/fly-dm/fly-dm.conf:

[Xdmcp]
Enable=false

[Security]
AllowRemoteRoot=false

[Login]
AutoLoginEnable=true
AutoLoginUser=kiosk
AutoLoginSession=kiosk

Примените изменения:

sudo systemctl restart lightdm   # или fly-dm для SE

Шаг 3. Создание сессии киоска и скрипта запуска

1. Файл сессии

/usr/share/xsessions/kiosk.desktop:

[Desktop Entry]
Name=Kiosk
Comment=Firefox Kiosk Mode
Exec=/usr/local/bin/kiosk.sh
Type=Application

2. Скрипт запуска

/usr/local/bin/kiosk.sh:

#!/bin/bash
# Отключение хранителя экрана и DPMS
xset s off
xset -dpms
xset s noblank

# Переопределение горячих клавиш WM (если используется)
# xmodmap -e "keysym Super_L =" 2>/dev/null

# Запуск Firefox в режиме киоска
exec firefox-esr --kiosk "https://ваш-стартовый-адрес.ru" --private-window
sudo chmod +x /usr/local/bin/kiosk.sh

--kiosk доступен в Firefox 71+. --private-window предотвращает сохранение кэша/cookie между перезагрузками.


Шаг 4. Жёсткая настройка Firefox через Policies

Создайте файл /etc/firefox/policies/policies.json:

{
  "policies": {
    "Homepage": {
      "URL": "https://ваш-стартовый-адрес.ru",
      "Locked": true,
      "StartPage": "homepage"
    },
    "DisablePrivateBrowsing": false,
    "DisableFirefoxScreenshots": true,
    "DisablePocket": true,
    "DisableTelemetry": true,
    "DisableFirefoxStudies": true,
    "DisableProfileImport": true,
    "DisableProfileRefresh": true,
    "BlockAboutConfig": true,
    "BlockAboutAddons": true,
    "DisableDeveloperTools": true,
    "DisableAppUpdate": true,
    "DisableSystemAddonUpdate": true,
    "Permissions": {
      "Camera": false,
      "Microphone": false,
      "Location": false,
      "Notifications": false
    },
    "Extensions": {
      "Install": [],
      "Locked": []
    }
  }
}

Проверка применения: откройте about:policies в Firefox (если не заблокировано).


Шаг 5. Блокировка системных функций

1. Отключение виртуальных терминалов (Ctrl+Alt+F1..F12)

/etc/systemd/logind.conf:

NAutoVTs=0
ReserveVT=0
HandleCtrlAltDel=ignore
HandleSuspendKey=ignore
HandleHibernateKey=ignore
HandleLidSwitch=ignore
sudo systemctl restart systemd-logind

2. Блокировка Ctrl+Alt+Del в X11

Создайте /etc/X11/xorg.conf.d/99-kiosk.conf (если директории нет, создайте):

Section "ServerFlags"
    Option "DontVTSwitch" "true"
    Option "DontZap" "true"
EndSection

3. Отключение переключения пользователей и выхода из сессии

sudo apt install polkitd

Создайте /etc/polkit-1/rules.d/99-kiosk.rules:

polkit.addRule(function(action, subject) {
    if (subject.user == "kiosk" && 
        (action.id == "org.freedesktop.login1.reboot" ||
         action.id == "org.freedesktop.login1.power-off" ||
         action.id == "org.freedesktop.login1.suspend" ||
         action.id == "org.freedesktop.login1.lock-session")) {
        return polkit.Result.NO;
    }
});

Шаг 6. Особенности Astra Linux SE

Функция Рекомендация
Fly-DM Автологин настраивается в /etc/fly-dm/fly-dm.conf (см. Шаг 2)
MAC (мандатный контроль) Пользователю kiosk присвойте метку безопасности: sudo chcat -l kiosk user_u:role_r:s0-s0:c0.c1023 (адаптируйте под вашу политику)
Аудит и журналирование Включите auditd для отслеживания попыток выхода из киоска
Обновления Отключите автообновление ОС: sudo systemctl mask unattended-upgrades

В SE рекомендуется использовать firejail или chroot для изоляции Firefox, если киоск размещён в публичном пространстве.


Шаг 7. Отладка и проверка

1. Перезагрузите систему или перезапустите менеджер входа:
   sudo systemctl restart lightdm   # или fly-dm
2. Проверьте логи:
   journalctl -u lightdm -f
   cat /home/kiosk/.xsession-errors
3. Убедитесь, что:
  • Браузер запускается автоматически
  • Нет панели задач, меню, переключения окон
  • Ctrl+Alt+F1..F12, Ctrl+Alt+Del, Alt+Tab не работают
  • about:config заблокирован
  • При перезагрузке система возвращается к киоску

Опциональные улучшения

Задача Решение
Обновление страницы по таймеру Расширение Auto Refresh или JS setTimeout() на стартовой странице
Защита от выдёргивания питания UPS + apcupsd с graceful shutdown
Мониторинг systemd watchdog + скрипт ping с перезапуском firefox-esr при потере сети
Wayland (Astra 1.8+) Запуск с MOZ_ENABLE_WAYLAND=1 firefox-esr --kiosk URL