如何限制用户访问特定的应用程序?


8

我想限制以普通特权打开的应用程序。只有root用户才能运行该应用程序,以便其他人不会看到其内容,并且他们也不会更改任何内容。


@VRU我不确定您的链接是否重复。
don.joey 2013年

1
@VRU既然您不能伪造acros网站,我们绝对可以对此进行问答(除非我们声明此主题外,我不会)。
user98085 2013年

Answers:


2

应该有一个更好的方法(也许使用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文件中使用的)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.