Документация к KioskBrowser

для администратора

kiosk browser with virtual keyboard screenshot

Системные требования

  • Операционная система: Windows 7/10/11 с процессором x86/x86_64 или Linux с процессором x86_64/ARM64/ARMv7
  • Процессор: x86/x86_64/ARM64/ARMv7 (см. поддержку ОС)
  • ОЗУ: 2ГБ (4ГБ рекоммендуется)
  • Дисковое пространство: 1ГБ свободного дискового пространства
  • Экран: 1280x1024 или больше
  • Ввод: сенсорный экран или мышь
  • Видеокарта: поддерживаемая браузером Chrome. Рекомендуется с поддержкой аппаратного декодера H.264 и соответствующими драйверами

Браузер не совместим с Windows XP и Windows в S-режиме (Windows 10 S, Windows 11 S) и со старыми дистрибутивами Linux (например Ubuntu 16). Не покупайте браузер пока не убедитесь в работоспособности на вашей ОС.

Рекомендуемая конфигурация: процессор 2 ядра от 3 ГГц x86_64, 4 ГБ ОЗУ, от 64 ГБ SSD, интегрированная видеокарта с установленными драйверами, сенсорный экран, Windows 11 Professional.

Установка

Для установки скачайте браузер под вашу ОС.

Установка в Windows

  1. Создайте пользователя с ограниченными правами (например kiosk), автоматическим входом и дальнейшую установку ведите под этим пользователем.
  2. Скачайте и установите KioskBrowser.msi. Файл будет установлен в %userprofile%\AppData\Local\Programs\KioskBrowser\KioskBrowser.exe.
    KioskBrowser для Windows x86
  3. Добавьте этот файл в автозагрузку.
  4. Запустите файл, при срабатывании брандмауэра разрешите выход в сеть.

При первом запуске браузер автоматически откроет экран настройки.

Установка в Linux

  1. Создайте пользователя с ограниченными правами, автоматическим входом и дальнейшую установку ведите под этим пользователем.
  2. Скачайте файл KioskBrowser*.AppImage под ОС с вашим типом процессора и разместите его в любом месте.
    KioskBrowser для Linux x86_64 KioskBrowser для Linux ARM64 KioskBrowser для Linux ARMv7
  3. Сделайте файл исполняемым командой: chmod o+x KioskBrowser*.AppImage
  4. Добавьте этот файл в автозагрузку.
  5. Запустите файл.

При первом запуске браузер автоматически откроет экран настройки.

Пример установки под Linux:

$ sudo useradd kiosk
$ sudo mkdir -p /opt/KioskBrowser
$ wget --no-check-certificate https://kioskbrowser.elibsystem.ru/files/dist/KioskBrowser.AppImage -O /opt/KioskBrowser/KioskBrowser
$ chmod 0755 /opt/KioskBrowser/KioskBrowser
$ sudo chown -R kiosk:kiosk /opt/KioskBrowser
$ su kiosk /opt/KioskBrowser/KioskBrowser

Настройка

При первом запуске откроется экран настроек. Далее:

  1. Введите URL стартовой страницы (обязательно). Если URL не ввести, браузер при перезапуске снова откроется на экране настроек.
  2. Введите лицензионный ключ (не обязательно). Если ключ не вводить, браузер запустится в 30-дневном полнофункциональном демо-режиме по окончанию которого перезагрузка браузера откроет его на экране настроек.
  3. Отмотайте вниз страницы настроек и нажмите кнопку сохранения (обязательно).
  4. Браузер закроется. Дальше ждите несколько секунд пока браузер сам запустится вновь.
  5. Если в течении 10-20 секунд после закрытия браузера он не запустится, запустите его сами в ручном режиме.

Конфигурация сохранится в домашней папке пользователя в файле ".KioskBrowser.json". Если вам надо вновь открыть экран настроек, просто удалите этот файл и перезапустите браузер.

Для закрытия браузера используйте Alt+F4.

Файл в домашней папке .KioskBrowser.json будет содержать следующие настройки в формате JSON, все из которых опциональны кроме домашнего URL:

{
  "title": "Informational kiosk",   /* (string) Заглавие в верхней панели управления браузера */
  "homeUrl": "https://demo.elibsystem.ru/app/catalog", /* (string) URL домашней (стартовой) страницы на которой браузер открывается и куда возвращается по таймауту неактивности */
  "homeUrlInactivityTimeoutSec": 180,             /* (int) таймаут неактивности в секундах по истечению которого браузер удаляет историю, куки и возвращается на домашнюю страницу. Установите в 0 для отключения таймаута.  */
  "isKioskEnabled": true,			/* (boolean) включен режим киоска (вывод на весь экран поверх остальных окон) */
  "isAutoRunEnabled": false,		/* (boolean) включен автозапуск при входе пользователя */
  "primaryColor": "#323232",              /* (string) основной цвет фона (клавиатуры, панели управления) */
  "textColor": "#FFFFFF",         /* (string) цвет текста (клавиатуры, панели управления) */
  "isUseVirtualKeyboard": true,    /* (boolean) для включения или отключения виртуальной клавиатуры. */
  "isPrinterBlocked": true,              /* (boolean) установите в true для блокировки печати */
  "httpServerIsEnabled": false,           /* (boolean) установите в true для включение удаленного вызова процедур (RPC) через веб-сервер */
  "httpServerSecret": null,                       /* (string) использует секретное слово (пароль) как параметр "key" в URL при запросах к веб-серверу для доступа ко всем запросам. Установите в null если защита API веб-сервера не требуется. */
  "httpServerHostname": "localhost",      /* (string) имя сервера (hostname) или ip-адрес. Используйте "0.0.0.0" для запуска веб-сервера на всех IP-адресах киоска. */
  "httpServerPort": 8080                          /*  (int) порт веб-сервера. В Windows может быть любым, в Linux не устанавливайте ниже 1024 порта. */
  "antiBornPixelsIsEnabled": true,                /*  (boolean) предотвращает выгорание пикселей если экран не имеет встроенную защиту от выгорания. */
  "antiBornPixelsPadding": 10,                    /* (int) экран будет иметь черные отступы по краям браузера по которым он будет смещаться для предотвращения выгорания. По-умолчанию: 10. Установите в 0 для отключения отступов. */
  "scrollbarWidth": 17,   /* (int) ширина полосы прокрутки (скроллбара). Перезаписывает ширину по-умолчанию в браузере. */
  "isHeaderHidden": false,        /* (boolean) установите true для скрытия верхней панели управления. */
  "isBackHidden": false,  /* (boolean) установите в true для скрытия кнопки "назад". */
  "isHomeHidden": false,  /* (boolean) установите в true для скрытия кнопки "домой". */
  "isCloseHidden": true,		/* (boolean) установите в true для скрытия кнопки закрытия браузера. */
  "injectBrowserStyle": null, /* (string) css-стиль, инжектируемый в клавиатуру и в панель управления для смены стилей. Должен быть валидным CSS-кодом. Используйте "body {...}" как стиль. Пример для изменения шрифта: "injectBrowserStyle":"@font-face {font-family: permian; src: url('file:///opt/fonts/PermianSansTypeface.otf')} body {font-family: permian;}" */
  "langs": [					/* (array) object of lang with sort by delta. */
		{"langCode": "ru", "isEnabled": true, "delta":0},
		{"langCode": "en", "isEnabled": true, "delta":1}
	],
	"rules": [ /* (array) правила перехода по разрешенным URL. action allow - разрешает доступ, deny - запрещает. delta - сортировка, меньше delta - правило сработает раньше. isEnabled - применять или нет данное правило. url - URL по которому проверяется попадание правила в открываемый сайт и применение политики deny или allow. */
		{"action": "allow", "delta": 0, "isEnabled": true,  "url": "^https://kioskbrowser.elibsystem.ru/", "description": "allow kioskbrowser site"},
		{"action": "deny",  "delta": 1, "isEnabled": true,  "url": "^file://*", "description": "deny file://*"},
		{"action": "allow", "delta": 2, "isEnabled": true,  "url": "^http", "description": "allow http and https"},
		{"action": "allow", "delta": 3, "isEnabled": true,  "url": "^https", "description": "allow https"},
		{"action": "deny",  "delta": 4, "isEnabled": false, "url": "*", "description": "deny all"},
		{"action": "allow", "delta": 5, "isEnabled": true,  "url": "*", "description": "allow all"},
	]
}

Пример с указанием только homeUrl:

{
  "homeUrl": "https://ya.ru"
}

Windows

Приведенный ниже функционал не работает на Windows Home и Windows S.

Замена Explorer на KioskBrowser

Если вы хотите, чтобы в Windows вместо Explorer запускался браузер и меню "Пуск" и другие возможности Explorer небыли доступны, можно для пользователя заменить Explorer на KioskBrowser. Для этого:

  1. Зайдите под пользователем киоска (в примере пользователь "kiosk")
  2. Скачайте и установите KioskBrowser.msi
  3. Запустите KioskBrowser и настройте его
  4. Закройте по Alt+F4 KioskBrowser
  5. Нажмите Win+R, введите cmd и нажмите Enter для открытия командной строки
  6. Введите в командной строке:
    reg add "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v Shell /t REG_SZ /d "%LOCALAPPDATA%\Programs\KioskBrowser\KioskBrowser.exe" /f
  7. Выйдите из под пользователя и войдите вновь.

Настройка автовхода пользователя

  1. Войдите под администратором
  2. Запустите командную строку с правами администратора
  3. Введите в командной строке (заменив пользователя kiosk на созданного на предыдущем шаге):
    reg add "HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon" /v AutoAdminLogon /t REG_SZ /d 1 /f
    reg add "HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DefaultUserName /t REG_SZ /d kiosk /f
  4. Если пользователю киоска поставили пароль, укажите его: reg add "HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DefaultPassword /t REG_SZ /d Pa$$w0rd /f
  5. Если пользователь киоска является доменным пользователем, укажите домен: reg add "HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DefaultDomainName /t REG_SZ /d domainname /f

Дополнительная информация: доступна в документации Windows.

Linux

В разных дистрибутивах Linux и для разных рабочих столов (окружений) автозапуск и автовход пользователей настраивается по разному. Обратитесь к документации вашего дистрибутива.

Для бесплатного отечественного дистрибутива Calculate Linux составлена инструкция: https://elibsystem.ru/node/251.

Безопасность

  1. KioskBrowser предотвращает скачивание любых файлов и блокирует теги <input type="file"/>
  2. KioskBrowser запускается поверх других окон и предотвращает закрытие по Alt+F4 в Windows (но не в Linux).
  3. Виртуальная клавиатура KioskBrowser не содержит опасные кнопки Ctrl, Alt, Tab, Win, поэтому исключены опасные в режиме киоска комбинации: Alt+Tab, Alt+F4, Ctrl+Alt+Del, Shift+Esc, Win+L и др.
  4. При возвращении на домашнюю страницу (кликом по кнопке "домой" или при истечении таймаута неактивности) куки, localStorage, sessionStorage очищаются, таким образом браузер забывает всё что было до этого.
  5. Вы можете отключить печать на принтере.
  6. Браузером можно удаленно управлять, но если разрешается удаленный доступ, следует поставить секрет (пароль) для защиты API от случайных пользователей.
  7. В Windows можно запустить браузер вместо Explorer, это скроет любые уведомления, а в случае аварийного закрытия браузера пользователь не попадет на рабочий стол.

FAQ

FAQ

Браузер бесплатен?
Версии 1.х были бесплатными, но теперь они не распространяются и не поддерживаются. Начиная с 2.х браузер платный.
Может ли браузер проигрывать HTML5 видео в H.264/MP4?
Браузер не включает требующий лицензионных отчислений кодек H.264, но в Windows 10/11 вы можете использовать кодек H.264 если он установлен в системе и поддерживается видеокартой. Установить видеокодек можно из Microsoft Store.
Браузер поддерживает видео в VP9 и AV1.
Какая телеметрия собирается?
При активации на сервере лицензирования собирается информация об оборудовании, включая серийный номер процессора, материнской платы, жестких дисков для привязки браузера к оборудованию.
Во время работы собирается исключительно факт работы программы для подсчета числа активных установок и разрешение экрана. Никакая другая информация во время работы браузера не передается.
Собираемая информация не передается третьим лицам.
Если браузер не будет подключен к интернету, телеметрия отправляться не будет, а браузер сохранит свою работоспособность.
Привязывается ли лицензия к оборудованию?
Да, лицензия привязывается к оборудованию и при выходе компьютера из строя активированную лицензию нельзя перенести на другой компьютер.
Можно ли активировать браузер без интернета?
Нет, на время активации браузер должен быть подключен к интернету. После активации (ввода лицензионного ключа и нажатия кнопки сохранения) интернет можно отключить.
Лицензия бессрочная?
Лицензия бессрочная, но привязана к оборудованию. Фактически ею можно пользоваться пока работает оборудование на котором активирована лицензия.
Браузер отечественный?
Да, приказом Минкомсвязи РФ от 09.06.2020 №272 в приложении 1, пп.6, реестровым № 6660 программа KioskBrowser включена в реестр отечественного ПО.
Я запустил браузер в демо-режиме, но теперь купил лицензионный ключ и хочу браузер активировать, как ввести лицензионный ключ?
Удалите из домашней папки файл .KioskBrowser.json и перезапустите браузер. Он откроется на странице настройки и вы сможете ввести лицензионный ключ.
На каких отечественных ОС браузер будет работать?
Работа проверена на бесплатной отечественной ОС Calculate Linux. Для Calculate Linux составлена инструкция по запуску приложений в режиме киоска: https://elibsystem.ru/node/251.

Проблемы



Покупателям доступна базовая коммерческая поддержка.

libz.so

Запуск приложения завершается ошибкой:

libz.so: cannot open shared objet files: No such file or directory

Это ошибка: https://github.com/AppImage/AppImageKit/issues/1092

Установите libz из вашего дистрибутива. Для Ubuntu 20.01: $ sudo apt install zlib1g-dev



FUSE

Запуск приложения завершается ошибкой:

dlopen(): error loading libfuse.so.2

Выполните:
$ sudo apt install libfuse2