Ограничение пользователя Linux одним приложением

Ограничение пользователя Linux одним приложением

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

решение1

Если у вас есть конфиденциальные файлы, начните с их защиты. Это следует сделать даже если вы не собираетесь предоставлять другим пользователям доступ к системе.

Linux/Unix имеет сильную систему разрешений. Убедитесь, что ни один из конфиденциальных файлов не может быть прочитан others. Это можно сделать, ограничив доступ к любому каталогу по пути.

Не редкость установить разрешения на домашние каталоги, 700которые позволяют только пользователю и root видеть содержимое. Настройте ограниченного пользователя с его собственной группой, которая в некоторых дистрибутивах является группой по умолчанию.

Проведите аудит вашей системы, чтобы узнать, к каким файлам можно получить доступ при наличии othersразрешений.

Если некоторые конфиденциальные данные находятся в базе данных, проверьте ее разрешения.

Если вы разрешите пользователю доступ к браузеру, он, как правило, сможет просматривать файловую систему. Помимо режима киоска, вы можете рассмотреть возможность использования , chrootчтобы ограничить их небольшой частью системы. Это может быть сложно настроить для среды X-window, поскольку для этого требуется значительное количество файлов и устройств. Я бы ожидал, что профиль xguestдолжен будет разрешить доступ к тем же файлам и каталогам, что и chrooted-среда. Вы можете комбинировать подходы, реализующие Defense in Depth.

Относительно легко попытаться ограничить пользователя X-window одним приложением. Просто запустите это приложение вместо запуска диспетчера окон. Пока это приложение не может запускать другие приложения, вы ограничили их этим приложением. Изучите возможности этого приложения, поскольку оно может просматривать и, возможно, выполнять файлы. Есть ли у него режим, kioskпредназначенный для ограничения доступа.

Если в конфигурации есть изъяны, пользователь может избежать тюрьмы. Я использовал несколько трюков, чтобы получить доступ к explorerи другим инструментам в предположительно заблокированной системе Windows. Вот где правильные разрешения файлов и каталогов вступают в полную силу.

решение2

1. Храните конфиденциальные данные на внешнем диске.

Мой опыт говорит, что Firefox может порождать процесс ssh и пытаться подключиться с вредоносных IP. За год использования Firefox у меня было около ~200 попыток. Так что, если возможно, храните конфиденциальные данные на внешнем диске или порождайте Firefox как другого пользователя.

2. Добавьте второго пользователя.

OP вопрос не прямой, потому что мы не знаем, будет ли он также использовать этот ПК. Так что создайте другого пользователя и установите Windows Manager, что-то вроде fluxbox, должно быть достаточно.

3. Выполнить 'браузер startx' только для второго пользователя.

Итак, для второго пользователя вы можете отредактировать (в моем случае я использую lxqt): ./etc/X11/xinit/xinitrc.lxqtили ./usr/bin/startlxqtи добавить туда свой браузер.

4. Если вам нужна только ОС киоска, попробуйтепортеус

В чем проблема? Если вы хотите, чтобы я ответил подробнее, просто спросите.

Связанный контент