Я хочу создать учетную запись пользователя linux (в Ubuntu или Debian или в любом другом выпуске, более подходящем для этого), который ничего не может сделать, кроме как просто просмотреть предварительно определенную веб-страницу. Вид стиля Киоска, так что пользователь может наблюдать за тем, что происходит с этой веб-страницы, но; не может выполнить или записать (и эта блокировка предпочтительно выполняется также с помощью графического интерфейса пользователя, т.е. пользователь не может свернуть или закрыть браузер, не может просмотреть любые -стартовые меню-) что-либо на машине. Как я могу это сделать?
2 ответа
На этом сайте есть несколько уроков о том, как настроить 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 SD
wwwНастройка 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 Bastille - это программа, которая проведет вас через большое количество параметров конфигурации, чтобы сделать вашу систему более безопасной. Некоторые из них связаны с сетью, например, он устанавливает межсетевой экран, который - в случае веб-киоска - должен разрешать только исходящий http и принимать только ответы на исходящий трафик. Другой набор настроек обеспечивает защиту системы как таковой посредством "chroot", изменения некоторых разрешений файловой системы и ужесточения использования SUID. Одна функция чрезвычайно полезна для ПК без присмотра: установка (root) пароля для уровня запуска 1 ("однопользовательский режим", "корневой режим", "режим восстановления"; "режим обслуживания"). В однопользовательском режиме можно сбросить пароль пользователя root и, следовательно, войти в систему как пользователь root - это явная угроза для компьютера без присмотра: просто выдерните вилку из розетки или нажмите кнопку питания, и вы обойдете всю защиту, даже если ctrl + alt + del отключен и выключение / перезагрузка доступна только пользователю root.
Другим моментом является отключение принтеров и / или предоставление возможности управлять заданиями на печать только для пользователя root. Вам придется выяснить это в зависимости от того, для чего будет использоваться этот ПК, и от того, нужен ли пользователю www печать или нет. В этой закрытой настольной системе Ubunto / Gnome есть некоторые подробности о соответствующих настройках.
Это можно сделать с помощью SELinux. Политика Fedora SElinux поддерживает специального гостевого пользователя по имени xguest
Пакет xguest предоставляет учетную запись пользователя киоска. Эта учетная запись используется для защиты компьютеров, к которым люди подходят и используют, например, в библиотеках, банках, аэропортах, информационных киосках и кафе. Учетная запись пользователя киоска очень заблокирована: по сути, она позволяет пользователям только входить в систему и использовать Firefox для просмотра веб-сайтов в Интернете. Любые изменения, сделанные при входе в систему с использованием своей учетной записи, такие как создание файлов или изменение настроек, теряются при выходе из системы.
См. Руководство пользователя Fedora 11 Security Enhanced Linux.