回答:
あなたはchroot環境でアプリケーションを実行することができます。つまり/、アプリケーションが見るアプリケーションは本物ではありません/。完全な新しいファイルシステム階層を作成し、それに--bind必要なすべてのものをマウント()します。関連するポイントは次のとおりです。あなたは本当をマウントすることができます~/tmpに/tmpしてchroot環境。
chroot(スーパーユーザー権限が必要です)を使用する代わりに、Linuxコンテナーでほぼ同じことを実行できます(lxc)。私は慣れてlxcいませんが、ホストシステムにとっては通常のユーザープロセスであるため、コンテナー内のそのような構成ではスーパーユーザーである必要はありません。
chroot追加の設定が必要です(あなたが全体を交換する/だけでなく、/tmpので、へのアクセス/etc、/var「投獄」プログラム(など、また「刑務所」の内側になります)と、独自のセキュリティ上の問題を作成してファイルシステムの一部を操作できるようにします。これは、偽の設定時に権限に注意しないと通常は立ち入り禁止になります/)。
/がのみに制限されていない場合、root「投獄された」ユーザーは、システムの主要な場所にあると思われるファイルを作成または置換できます/etc/passwd。これは、の外部では不可能である特権の昇格に使用できchrootます。多くのLinux FTPサーバーは、伝統的にchrootファイルシステムの残りの部分を隠すために使用されていましたが、ディレクトリが非rootユーザーによって書き込み可能である場合、隠蔽を拒否します。
chrootか、lxcこれを行うことが可能であること。スーパーユーザーにならないでそれを達成する方法があることを知っておくのも本当にいいです。