chrootを介してJavaプログラムを「刑務所」にする方法は? (Fedora 23)

chrootを介してJavaプログラムを「刑務所」にする方法は? (Fedora 23)

最近Minecraftサーバーを作成しましたFedora 23そして、「もし悪い人が私のコンピュータで非常に重要なファイルを見つけようとしたらどうなりますか?私のファイルを保護する必要があります!」という質問に直面しました。

私の瓶は/home/ディレクトリにあります。しかし、最初からすべてのプログラムが私のユーザーのすべてのディレクトリにアクセスできるので、それを別のディレクトリに移動すると、悪意のある人が自分のファイルにアクセスできるかどうか心配されます。

私の考えにはを使うべきだと思いますchroot。しかし、最大の問題はどうすべきかわかりません。

答え1

パトリックのアドバイスはdocker素晴らしいです。他の仮想化方法もうまく機能します(たとえば、VirtualBoxまたはkvm)。

minecraft別のオプションは、Minecraftサーバーを実行するためにシステムに別のユーザー(たとえば)を作成することです。独自のグループ(たとえばminecraft)を提供し、すべてのMinecraftファイルにグループへのRWアクセス権があることを確認してから、ユーザーがminecraftMinecraftファイルへの完全な読み取りおよび書き込みアクセス権を持つようにグループに自分のユーザーを追加します。

また、Minecraftユーザーがほとんどのファイルへの書き込みアクセス権を持たないように、すべてのMinecraftファイルとディレクトリに対する権限を設定することもできます(Minecraftが書き込む必要があるファイルのみ)。これにはMinecraftユーザーが必要です。いいえMinecraftグループのメンバーである必要があります(デフォルトのGIDがあるか、デフォルトのGIDである可能性があります)nobodynogroup

Minecraftサーバーを破損した人は、Minecraftが所有するファイルと誰でも読み書きできるファイルにのみアクセスできます。 - ファイルにそのような許可がないことを確認してください。

関連情報