web-dev-qa-db-ja.com

DockerはVMと同じセキュリティを提供しますか

Dockerは、ハイパーバイザー上で実行される仮想マシンと同じレベルのセキュリティ/分離を提供しますか?そうでない場合、それをどのように達成できますか?

8
Ijaz Ahmad Khan

理論的には、システムの一部が共有されているため(カーネルが共有されている、コンテナーが元のファイルシステムのchrootを持っているなど)、Dockerの分離はそれほど強力ではありません。ただし、ほとんどの目的には十分です。 chroot、cgroupsなど、および権限のないアカウントでコンテナを実行する機能(コンテナのルートはホストで制限されているため)を使用すると、ほとんどの用途でコンテナを十分にロックダウンできます。

VMレベルの分離が本当に必要な場合は、VMを使用します。ユースケースによっては、VM内でDockerコンテナーを起動および停止できます。

10
ThrawnCA

いいえ、Dockerは設計上安全性が低くなっています。回答は https://security.stackexchange.com/a/148794/39716 で確認してください

OSレベルの仮想化は仮想マシン間のカーネル空間を再利用します。カーネルははるかに複雑なコードであり、非常に大きな攻撃面を残します-基本的に、Dockerを非常に良いものにして、限られたリソースで多数のVMをスタックしますほんの少しのメモリで、PCI DSSユースケース-カーネルの再利用のために、それがあまり役に立たなくなります。

1
bbozo