Вопрос или проблема
Я хотел бы предоставить пользователю (маме и папе) доступ только к этим 4 приложениям:
- Google Chrome
- Libreoffice Calc и Writer
- vlcplayer
Разумеется, они заблокированы в домашнем каталоге пользователя. И, конечно, они должны иметь возможность изменять громкость и печатать документы. Это близко к киоску 😉
Как лучше всего это реализовать?
Я использую 12.04 (64).
(pessulus и lockout недоступны?)
Создайте им отдельную учетную запись без административных привилегий. Если им не нужно сохранять данные дольше сессии, подойдет временная гостевая учетная запись.
Если вы действительно хотите ограничить доступ к приложениям для некоторых пользователей, мне приходят в голову несколько идей. Все они предполагают наличие отдельной учетной записи пользователя, и ни одна из них не кажется мне действительно удовлетворительной.
-
Если вы просто хотите скрыть разнообразие и сложность, чтобы не запутать пользователей, переопределите все “необходимые” стартовые программы. Примером может служить следующий не протестированный shell-скрипт:
cp -R {/usr,~/.local}/share/applications find ~/.local/share/applications -name \*.desktop -exec sed -i -e '/^NoDisplay=/d;/^\[Desktop Entry\]$/a NoDisplay=true' \{\} +
Затем удалите стартовые программы разрешенных приложений из
~/.local/share/applications
. Вы можете сделать нечто подобное для MIME-типов, которые вы не хотите, чтобы они открывали (с некоторыми приложениями). -
Напишите некоторые правила apparmor, которые запрещают пользователю “родителям” запускать что-либо, кроме разрешенных приложений. Это может быть сложно, потому что многие приложения полагаются на внешние программы и shell-скрипты, а некоторые имеют свои реальные бинарные исполняемые файлы где-то в
/usr/lib
. Тем не менее это может работать для очень ограниченного набора приложений.Разумный набор разрешенных программ будет включать пакеты “coreutils”, “bash”, “python”, “perl” и любые зависимости разрешенных приложений.
Я также отключил бы стартовые программы, как объяснено выше, чтобы не иметь кучи неработающих стартов в dash, dock, меню приложений или где угодно.
Ответ или решение
Чтобы ограничить доступ пользователя к определённым приложениям в операционной системе Ubuntu 12.04 (64), можно воспользоваться несколькими методами. Основная цель – создать среду, в которой пользователь сможет использовать только указанные вами приложения: Google Chrome, LibreOffice Calc и Writer, а также VLC player. Вот пошаговое руководство по реализации этого:
1. Создание отдельного пользователя
Сначала создайте отдельную учётную запись для ваших родителей:
sudo adduser parents
Следуйте инструкциям для установки пароля и дополнительных данных.
2. Отключение административных привилегий
Убедитесь, что эта учётная запись не имеет административных прав. Это предотвратит доступ к важным системным функциям и настройкам.
3. Скрытие ненужных приложений
Для упрощения интерфейса и сокращения выборов можно скрыть ненужные приложения. Используйте следующее:
# Копируйте приложения в локальную директорию
cp -R /usr/share/applications ~/.local/share/applications
# Скрывайте все приложения, кроме разрешённых
find ~/.local/share/applications -name '*.desktop' -exec sed -i -e '/^NoDisplay=/d;/^\[Desktop Entry\]$/a NoDisplay=true' {} +
Затем удалите .desktop файлы для тех приложений, которые вы не хотите, чтобы пользователь видел. Например:
rm ~/.local/share/applications/<имя_лишнего_приложения>.desktop
4. Настройка AppArmor
Для более строгого контроля можно воспользоваться AppArmor, чтобы разрешить выполнение только определённых приложений. Вот пример создания профиля для пользователя:
- Создайте новый профиль AppArmor для пользователя
parents
.
sudo nano /etc/apparmor.d/usr.bin.myspecificprofile
- Добавьте разрешения для необходимых приложений:
# это пример, обновите путь к нужным приложениям
/bin/google-chrome usr.bin.google-chrome,
/usr/bin/libreoffice-calc usr.bin.libreoffice-calc,
usr.bin.libreoffice-writer,
usr.bin.vlcplayer,
- Активируйте профиль:
sudo apparmor_parser -r /etc/apparmor.d/usr.bin.myspecificprofile
5. Ограничение в доступе к сторонним MIME типам
Если вы не хотите, чтобы пользователь открывал файлы с определёнными MIME типами, можете настроить соответствующие параметры. Это может также помочь в создании более контролируемой среды.
6. Мобильность и печать документов
Для обеспечения возможности изменения громкости и печати документов проверьте, чтобы нужные приложения имели доступ к аудио и принтерам. Обычно это не вызывает проблем, но если управление состоянием звука переносится на другие приложения – это стоит проверить.
Заключение
С помощью вышеуказанных шагов вы сможете создать среду, в которой ваши родители будут иметь доступ только к указанным приложениям, без возможности доступа к ненужным или потенциально опасным программам. При этом они смогут выполнять основную работу, например, печатать документы и управлять громкостью.
Не забудьте протестировать все настройки, чтобы убедиться, что всё работает корректно для пользователей.