如何限制用户访问特定应用程序?
我想限制在普通权限下打开的应用程序。 只有root才能运行应用程序,因此其他人不会看到内容,也不会改变任何内容。
应该有更好的方法(可能使用AppArmor?),但您可以随时更改可执行文件的权限。 假设您要禁用对nano
访问权限。 他们的默认权限如下:
➜ ls -la /bin/nano -rwxr-xr-x 1 root root 192008 Oct 1 15:12 /bin/nano
它可以由所有者,组和其他人执行。 要仅维护所有者执行,您可以使用
sudo chmod gx /bin/nano sudo chmod ox /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文件中使用)。