这更多的是一个理论问题和寻求建议和指点,而不是关于特定软件的问题。
我有一台与发行版无关的 Linux 机器(这意味着我并不真正关心现在要把什么放在那里),我打算把它放在某个 DC 中,那里的位置不是很安全(说来话长),并且存在服务器被物理移除并打开以提取数据的风险。
有没有办法让黑客的日子不好过,即使他们可以选择拔出硬盘,然后基本上对硬盘为所欲为?有问题的软件是一些锁定的网站、用户文件、mysql db 等,这些都是 LAMP 机器的标准内容。
想到的只是加密整个 FS(为此添加更好的主轴和更多的 CPU 能力没有问题),但除此之外还有其他方法吗?
答案1
只要有人可能移除您的磁盘,防止数据提取的唯一无危险方法就是对根文件系统(以及任何其他文件系统)进行全盘加密。
您可以进行设置,这样如果服务器重新启动,它将停止启动并等待您通过 ssh 进入它以解密根文件系统。只有一个小的 initrd 映像
有许多手册指南可供参考,但过去几年 cryptsetup 已将其包含在 debian(及其他)中。请查看 cryptsetup 包中的 /usr/share/doc/cryptsetup/README.remote.gz 文件,了解如何在您的服务器上进行设置。
即使有人物理移除磁盘以窃取或复制数据,也无法从您的服务器中提取任何有用的数据,并且如果您遭遇断电或任何其他重启,此根文件系统加密不会使您的远程服务器不可用。
答案2
您可以制作一个炸弹并将其放在服务器内部,并设置一个隐藏开关。如果不关闭开关并打开盖子……就会爆炸!
不,真的,玩笑归玩笑。磁盘加密就是我能想到的最好的主意。你可以做的内置 luks 加密应该足够了,特别是如果你使用长而复杂的密码。
但请记住,这种加密需要物理访问服务器才能启动它。需要输入密码才能从磁盘启动任何内容。
现在,我们进入了理论阶段。即使你拥有全盘加密,也有可能冻结内存并保留访问数据所需的密钥。(请参阅此http://www.youtube.com/watch?v=JDaicPIgn9U)
因此,实际上你能做的最好的事情就是保证良好的物理安全。
答案3
请记住,理论是这样的“如果有人能够访问物理机器,他们就可以拥有你。”但是......
您是否研究过 Truecrypt 的全盘加密?我还想尝试禁用物理机上尽可能多的端口(USB 等)