私はLinuxネームスペースで遊んでいますが、ユーザが(ネームスペースを使わずに)新しいネットワークネームスペースでプロセスを実行したい場合、ルートにするか、CAP_SYS_ADMIN
の能力が必要です。なぜ非共有(CLONE_NEWNET)にCAP_SYS_ADMINが必要ですか?
unshare(2)マンページは言う:(Linuxの2.6.24以降)
CLONE_NEWNETが
このフラグはクローン(2)CLONE_NEWNETフラグと同じ効果を有します。 呼び出し元のプロセスが、既存のプロセスと共有されていない新しいネットワーク名前空間に移動されるように、ネットワーク名前空間の共有を解除します。 CLONE_NEWNETの使用には、CAP_SYS_ADMIN機能が必要です。だから、
私がネットワーク上のサンドボックス内のPDFリーダーを実行したい場合は、私は、ユーザーがネットの名前空間または一部の特権ラッパーを使用する必要があります。
なぜですか?新しいプロセスは、インタフェースのない新しいネームスペースに配置されるため、実際のネットワークから分離されます。どのような問題やセキュリティ上の脅威が、非特権の非ユーザネットワークネームスペースを増やすのでしょうか?