Могу ли я перевести Linux в режим Party / Kiosk-Mode?

3046
Cihan Keser

Я хочу создать учетную запись пользователя linux (в Ubuntu или Debian или в любом другом выпуске, более подходящем для этого), который ничего не может сделать, кроме как просто просмотреть предварительно определенную веб-страницу. Вид стиля Киоска, так что пользователь может наблюдать за тем, что происходит с этой веб-страницы, но; не может выполнить или записать (и эта блокировка предпочтительно выполняется также с помощью графического интерфейса пользователя, то есть пользователь не может свернуть или закрыть браузер, не может просмотреть любые -стартовые меню-) что-либо на машине. Как я могу это сделать?

3

2 ответа на вопрос

2
Ivo Flipse

На этом сайте есть несколько уроков о том, как настроить Linux так, как вы хотите. Обратите внимание, что это может быть немного устаревшим ...

Я процитирую версию «только для веб-сайта», но проверьте сайт для получения дополнительной информации.

Это часть эксперимента по использованию Linux в качестве системы киосков. «Система киоска» может означать несколько вещей, но здесь мы предполагаем, что это компьютер, на котором работает только одно приложение - веб-браузер - и не позволяет пользователю делать что-либо еще, кроме как использовать этот браузер. Таким образом, компьютер можно оставить без присмотра, например, в общественных местах (публичные библиотеки, ...)

Одним из подходов, часто используемых для достижения этой цели, является установка Windows, затем ее блокировка и предоставление пользователю ограниченного пользовательского интерфейса, похожего на меню, - часто со специализированным программным обеспечением (например, WinU). Но это похоже на трату ресурсов и денег: вам придется купить лицензию Windows на компьютер, который вряд ли будет использоваться (только браузер ...), и вдобавок к этому вы платите за дополнительное программное обеспечение, чтобы сделать его запустить только один браузер. Таким образом, мы смотрели на это с другой стороны: может ли это то, что может сделать Linux, без всего лишнего?

Что нам нужно ?

Чтобы запустить только веб-браузер, нам не нужен полноценный рабочий стол: подойдет минимальная система x-windows: все, что нам нужно, - это 1 окно, в котором может работать браузер. Этот подход также используется в этой настройке «минимального графического интерфейса» для сервера Linux, где мы предоставляем веб-браузер, чтобы использовать графические интерфейсы для настройки системы. Основываясь на этом подходе, мы настроим базовую систему Linux (установим только операционную систему - например, Debian 3) и добавим некоторые компоненты x-window, чтобы мы могли запустить веб-браузер (firefox).

Предполагая, что этот компьютер останется без присмотра, мы не хотим, чтобы пользователи играли с ним, и мы определенно не хотим, чтобы пользователи взламывали его или пытались повысить свои привилегии или установить свое собственное программное обеспечение, чтобы машина стала зомби. или что нет - поэтому мы отказываем им всем доступ к системе. Для этого мы используем «Бастилию». Бастилия - это программа, которая поможет вам заблокировать систему. (см. Бастилию домой)

Наконец, мы хотим, чтобы все работало более или менее автоматически, поэтому мы воспользуемся уровнями запуска и сценариями запуска.

Установка программного обеспечения и базовая конфигурация

базовая настройка Мы устанавливаем только базовую систему, затем добавляем нужные нам пакеты. Используемая здесь ОС Debian 3.0, сетевая установка. Мы добавляем bastille, firefox и некоторые компоненты из системы x-windows: этого достаточно для создания окон и входа пользователя в GUI. Мы также добавили ssh для удаленного администрирования root и vim для редактирования текстовых файлов.

apt-get установить x-window-system fvwm vim ssh

Системные требования: любой ПК, способный работать (текстовый режим) linux + xwindows. Место на жестком диске: ... mb (система + программное обеспечение) + подкачка + место для кэша браузера / временных файлов. Значение: подойдет любой старый компьютер.

создать пользователя Мы создаем 1 пользователя (www) с паролем www. Эта учетная запись будет использоваться для использования ПК в качестве веб-клиента.

useradd -m -s / bin / false -p mkpasswd www SDwww

Настройка Windows Настройка X-windows означает, что вам придется вводить некоторые данные (монитор, клавиатура, мышь, ...). Чтобы изменить конфигурацию: dpkg-переконфигурируйте xserver-xfree86 или отредактируйте файл конфигурации (/ etc / X11 / X86config-4).

Конфигурация среды Windows находится в домашнем каталоге пользователя (~ / .xinitrc), и, если она отсутствует, используется системное значение по умолчанию: / usr / X11R6 / lib / X11 / xinit / xinitrc (re. XFree86 HOWTO), (В Debian) все, что делает xinitrc, это вызывает / etc / X11 / Xsession, который, в свою очередь, ссылается на файлы в /etc/X11/Xsession.d и ~ / .Xsession. В /etc/X11/Xsession.d мы находим скрипт 99xfree86-common_start с состоянием exec $ STARTUP. Предполагая, что именно здесь мы можем поместить программы, которые хотим запустить в X, мы заменим exec $ STARTUP на 'exec firefox'. Таким образом, Firefox запустится, как только xserver будет запущен, и закрытие Firefox также остановит сеанс xwindows.

Для этого: прочитайте документацию Debian о том, как настроить менеджеры окон и выясните, как все эти файлы x11 связаны друг с другом. найти способ заставить высоту и ширину в Firefox. Мы хотим это на весь экран. "firefox -height 600 -width 800" должен работать? Обходной путь: запустите Firefox один раз, настройте параметры и окна - он будет использовать эти параметры в следующий раз

Уровни запуска Теперь вы можете обнаружить, что ваша система теперь предлагает графический вход в систему и запускает Firefox по праву, что в любом случае мы и хотели, за исключением того, что root предпочитает командную строку для настройки системы. Поэтому мы изменили уровень запуска по умолчанию на 3 (в / etc / inittab) и отключили сценарии запуска X в rc2.d (уровень запуска 2). Теперь система загрузится до уровня запуска 3 (с логином GUI для пользователя www и Firefox сразу запустится) - root может загрузить init 2 для командной строки и не беспокоиться.

Бонус Хотя у вас теперь есть графический интерфейс, почему бы не включить заставку? «Матрица» хорошая.

БастилияBastille - это программа, которая проведет вас через большое количество параметров конфигурации, чтобы сделать вашу систему более безопасной. Некоторые из них связаны с сетью, например, он устанавливает межсетевой экран, который - в случае веб-киоска - должен разрешать только исходящий http и принимать только ответы на исходящий трафик. Другой набор настроек обеспечивает защиту системы как таковой посредством «chroot», изменения некоторых разрешений файловой системы и ужесточения использования SUID. Одна функция чрезвычайно полезна для ПК без присмотра: установка (root) пароля для уровня запуска 1 («однопользовательский режим», «корневой режим», «режим восстановления»; «режим обслуживания»). В однопользовательском режиме можно сбросить пароль пользователя root и, следовательно, войти в систему как пользователь root - очевидно, угроза для компьютера без присмотра:

Другим моментом является отключение принтеров и / или предоставление возможности управлять заданиями на печать только для пользователя root. Вам придется выяснить это в зависимости от того, для чего будет использоваться этот ПК, и от того, нужен ли пользователю www печать или нет. В этой закрытой настольной системе Ubunto / Gnome есть некоторые подробности о соответствующих настройках.

от? Октябре 2005. да, можно сказать, что оно датировано. :) вот версия от июля 2006 года, в которой используется Ubuntu (тот же сайт): http://users.telenet.be/mydotcom/howto/linuxkiosk/ubuntu01.htm ... конечно, где-то есть более свежее HOWTO. quack quixote 14 лет назад 0
Моя страница суперпользователя упала на меня, когда я добавлял более свежую версию Ivo Flipse 14 лет назад 0
Он мог просто запустить Linux с LiveCD, который устраняет часть проблемы! Ivo Flipse 14 лет назад 0
1
fpmurphy1

Это можно сделать с помощью SELinux. Политика Fedora SElinux поддерживает специального гостевого пользователя по имени xguest

Пакет xguest предоставляет учетную запись пользователя киоска. Эта учетная запись используется для защиты компьютеров, к которым люди подходят и используют, например, в библиотеках, банках, аэропортах, информационных киосках и кафе. Учетная запись пользователя киоска очень заблокирована: по сути, она позволяет пользователям только входить в систему и использовать Firefox для просмотра веб-сайтов в Интернете. Любые изменения, сделанные при входе в систему с использованием своей учетной записи, такие как создание файлов или изменение настроек, теряются при выходе из системы.

См. Руководство пользователя Fedora 11 Security Enhanced Linux.

Похожие вопросы