web-dev-qa-db-ja.com

ユーザーが特定のアプリケーションにアクセスするのを制限する方法は?

通常の権限で開かれるアプリケーションを制限したい。 rootのみがアプリケーションを実行するので、コンテンツは他の人には見られず、何も変更されません。

8
GKUTTY

これを行うにはもっと良い方法があるはずです(おそらく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への単なるリンクであるため、そこで実行できます(または.shファイルで使用される/usr/lib/firefox/firefoxを使用) 。

2
Salem