【问题标题】:Is LXC can be secure enough for IaaS?LXC 对于 IaaS 是否足够安全?
【发布时间】:2015-08-04 10:39:20
【问题描述】:

我在 Debian 手册上发现了一些关于 LXC 的隔离限制。

这些限制大约是:

  • 内存隔离
  • 共享文件系统
  • 内核消息
  • 内核妥协的可能性

对于内存隔离和文件系统,这似乎不是问题,因为可以配置容器来隔离它们。但是有一种方法可以确保内核足够安全,以确保不受信任的用户无法破坏内核并且无法读取消息内核?

如果可能的话,这种受限用户访问是否会限制 IaaS ?还是使用真正的虚拟化或半虚拟化来提供 IaaS 解决方案不是更好吗?

【问题讨论】:

    标签: linux-kernel cloud virtualization lxc


    【解决方案1】:

    所有 Linux 容器仍然在一个内核下运行。如果所述内核受到损害,并且由于该内核以最高特权的硬件模式(x86 的环 0)运行,它可能会影响每个运行的容器。使用传统的硬件虚拟化,即使一个来宾内核被破坏,管理程序也基本上存在于另一个保护环(同样是 x86 术语)中,以隔离虚拟来宾。当然,假设虚拟机管理程序的实现存在错误,则可能会破坏虚拟机管理程序,但破坏虚拟机不会直接影响其他来宾。

    此外,受感染的来宾可能会通过(虚拟化)网络间接影响其他来宾,即发送恶意消息,但这类似于网络中的一台机器受到攻击并对另一台机器执行相同的操作,而无需虚拟化。此外,受感染的客户可能会开始通过微架构元素影响其他机器的性能,例如破坏缓存,或使用所述微架构元素作为侧通道攻击来收集有关其他虚拟机的一些信息。

    【讨论】:

    • 感谢您的回复。那么有一种方法可以保护 LXC 容器,因为用户无法访问内核?我在这个话题上看到:What are the typical uses cases for LXC versus VM LXC 容器可以用于 IaaS,但是当我读到你时,它似乎很危险。
    • @MartinDonies 不与内核交互(通过系统调用)的进程(在 Linux 容器中)不会很有用。您最好的选择是限制容器中的进程具有哪些功能,最好在 serverfault.com 上询问您如何做到这一点。无论您是想为 IaaS 使用容器还是虚拟机,几乎肯定超出了 SO 帖子所能回答的范围,并且会得到很多固执己见的答案。虚拟机与容器的争论可能会很激烈,这取决于被问到的对象。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-12
    • 1970-01-01
    • 2013-02-03
    • 1970-01-01
    • 2012-05-28
    相关资源
    最近更新 更多