Как ограничить доступ пользователя к определенному приложению?

Я хочу ограничить открытие приложения обычными привилегиями. Только root должен запускать приложение, так что содержимое не будет видно другим, и они ничего не изменят.

8
задан 25 January 2013 в 16:29

1 ответ

Должен быть лучший способ сделать это (возможно, с AppArmor?), Но вы всегда можете изменить разрешения исполняемого файла. Предположим, вы хотите отключить доступ к nano. Их разрешения по умолчанию следующие:

 ➜  ls -la /bin/nano
-rwxr-xr-x 1 root root 192008 Oct  1 15:12 /bin/nano

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

sudo chmod g-x /bin/nano
sudo chmod o-x /bin/nano

После этого, если вы выполняете его в терминале как обычный пользователь:

 ➜  nano
bash: /usr/bin/nano: Permission denied

Обратите внимание, что это не доказательство решения. Если приложение, которое вы хотите заблокировать, имеет другие точки входа, они все равно могут быть доступны. Например, если вы попробовали тот же трюк с Firefox:

 ➜  ls -la /usr/bin/firefox
lrwxrwxrwx 1 root root 25 Jan 17 08:26 /usr/bin/firefox -> ../lib/firefox/firefox.sh

Даже если вы ограничили доступ к /usr/bin/firefox, так как это всего лишь ссылка на /usr/lib/firefox/firefox.sh, он все равно может быть там выполнен ( или используя /usr/lib/firefox/firefox, который используется в файле .sh).

0
ответ дан 25 January 2013 в 16:29

Другие вопросы по тегам:

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