Linux 服务器磁盘加密的方法

Mic*_*lGG 7 linux encryption disk-encryption tpm

有哪些方法可用于完全加密远程服务器(例如,位于数据中心)上的磁盘?在 Windows 上,我们可以使用 TPM 打开 Bitlocker。然后服务器可以重新启动,攻击要么需要在运行时占用机器并转储 RAM,要么破坏 TPM。在 Linux 上,有什么可用的?

到目前为止,我已经找到了描述如何在 TPM 中存储 dm-crypt 密钥的 IBM“蓝图”。这是最好的方法吗?

http://publib.boulder.ibm.com/infocenter/lnxinfo/v3r0m0/topic/liaai/tpm/liaaitpm_pdf.pdf

小智 4

要了解问题的最佳解决方案,您需要明确您想要实现的目标。换句话说,你的威胁模型是什么?谁是你的攻击者?您提到,要绕过加密,需要“在运行时拿走机器”(我认为您的意思是破解它),但这是托管服务器最有可能出现的情况。磁盘加密主要用于物理盗窃的情况。

您还需要考虑要保护哪些数据。您提到“完全加密磁盘”,但这是否需要加密例如/usr?如果您运行的是标准发行版,则没有什么值得关注的。如果不了解更多关于服务器将包含什么的信息,就很难做出推荐。

但为了给出更具体的建议,请考虑以下假设的服务器。它包含以下内容:

  • 一个简单的网站,显示一些产品
  • 用 Rails/Django/其他语言编写的基本 CRUD 订单应用程序
  • 用于存储客户信息和订单的 Postgres 数据库

在这些组件中,只有数据库真正需要保护,因此我的处理方法如下:

  • 使机器的大部分内容保持未加密状态(但尽可能多地使 FS 只读)
  • 为数据库创建一个单独的分区,并使用任何可用的 Linux 加密系统(ecryptfs 等)使用强密码对其进行加密。
  • 每次重新启动后,登录并使用存储在其他地方的密钥挂载分区。
  • 重新启动时让服务器提醒我

您提到了 TPM,但 TPM 在许多情况下并不能帮助您,例如攻击者获得管理权限。为此,TrueCrypt拒绝支持 TPM。