
これはマニュアルページに記載されていますsystemd-nspawn
これらのセキュリティ対策にもかかわらず、systemd-nspawnはセキュリティコンテナの設定には適していません。多くのセキュリティ機能はバイパスされる可能性があるため、主にコンテナがホストシステムを意図せずに変更するのを防ぐために使用されます。このプログラムの目的は、起動およびシステム管理に関連するパッケージ、ディストリビューション、およびソフトウェアをデバッグ、テスト、および構築することです。
その時、このような質問が出ました。2011年のメーリングリストにしかし、答えは古いようです。
systemd-nspawnには、CLONE_NEWNET
このオプションで実行されるコードが含まれています。--private-network
これは個人の名前空間の問題に対処するようであり、問題が言及されているAF_UNIX
ようです。CAP_NET_RAW
CAP_NET_BIND
どんな問題がまだ存在しますか?たとえば、LXCが今できること以外に何ができますかsystemd-nspawn
?
答え1
LXCはコンテナを実行できるので、より良いです。権限のないユーザーとして。これはsystemd-nspawnを使用して達成できますが(複数のユーザーではなく)、1人のユーザーだけが必要なシナリオにのみ当てはまります。これは、コンテナシナリオのマルチプロセスに対して困難または安全性が低い可能性があります。 docker、lxc、およびsystemd-nspawnが本質的に信頼できるセキュリティメカニズムではない理由がわからない場合は、次をお読みください。https://opensource.com/business/14/7/docker-security-selinux。デフォルトでは、コンテナはまだカーネルにアクセスでき、カーネルの脆弱性がある場合はシステム全体を制御できます。カーネルの脆弱性は、Linuxなどのモノリシックカーネルで一般的です。