encryption的分区和硬件故障

我有一个哲学问题。

我即将设置一个新的备份服务器,并且随着时间的推移,encryption数据似乎越来越合理。

但是,如果硬盘坏了怎么办? 我知道这个问题似乎很简单,但…

…没有像完美的高清这样的事情。 我已经失去了安全地放在架子上的驱动器的情况。 说谎约1年后,它不会旋转起来。 当然,在这种情况下,有或没有encryption数据已经消失。 但是,考虑到我所拥有的大约100台服务器级SAS驱动器中的3台在过去的三年中已经损失了一些部分,我感觉不太舒服。 如果某些损坏的扇区会导致未知的文件甚至整个分区无用,备份的意义何在。

另一个明显的方面是:如果明智的数据高清失踪? 我们有一次清洁人员忘记在早上closures我们的服务器室的情况。 有数十名学生每天通过这个房间,更多的是运气(或道德高昂),一些网箱没有被清空。

当我使用Linux时,我检查了什么解决scheme可用。 我已经读了一些关于堆栈文件系统和块设备encryption的知识,但是从我的理解来看,如果分区是encryption的,大多数HD恢复工具都会遇到问题。

我不是在谈论入侵数据。 我假设我将始终有一个解密所需的密钥文件或密码。

任何人都会在意分享一些想法吗?

硬盘encryptionalgorithm可能很复杂,但实际的块级encryption大多是一个非常简单的对称algorithm。 DES,3-DES及其追随者都是非常简单的algorithm,大部分是排列位的位置,然后是其值。

什么使整个事情如此复杂,是encryption/解密密钥的处理。 这就是RSA,数百个字符长素数等等的工作。

它需要这样做:因为encryption的磁盘不能太慢,因此实际的速度评估algorithm需要很快。

第二:encryption硬盘的扇区(块)需要彼此独立encryption/解密。 如果我们需要解密整个磁盘来找出最后一块是什么,这是一个很大的笑话。 🙂

这最后,这使得你的生活如此简单。 唯一需要保存的是编码/解码密钥。 如果有坏块出现,这个键足以解码整个硬盘。

当然,不是坏块,但是它们的缺点不会造成其他块的不可达性。

在处理密钥时,最好使用一些开源解决scheme:当然也是不允许的,因为开发者公司根本不支持救援机制,所以你将无法解码你的数据。

简而言之:如果使用扇区级别的数据救援工具(例如: gddrescue是开源世界中的一个好主意)克隆这样一个带有坏块的硬盘,克隆将几乎总是可以被解码(然后可以修复)主要问题。

当然,在磁盘损坏的情况下,可以从实际的事情上做更多的事情,但这一切都取决于实际使用的技术。

虽然这是一个相当广泛的问题,这里有一些提示:

如果你确实需要对数据进行encryption,那么你至less应该使用大量的企业磁盘,对于存储中的每个文件使用md5sum(或类似的)校验和工具,对于容器,在不同的介质上有多个完全备份。 使用磁带进行非现场存储(显然还要对数据进行校验,并对每种介质进行持续的恢复testing,并根据您要采取的“风险”来计划切换硬件。

对于服务器级磁盘:虚构值的示例:

假设你在3年内有1个缺陷部门。 这将使得每天有一个缺陷扇区的概率大约是1/1000。 (让我们忽略这个例子中的数据量)

随着驱动器老化,风险增加,直到失败。

因此,要么在达到某个阈值(如1%或2%)后将其交换出去,要么可能会导致备份/部分备份失败,并且必须确保:

  you know that it failed you take action that next one will not fail. 

请记住,这一切都没有encryption也发生。

所以encryption只会让您更有可能失去整个备份(如果您不仅仅在文件级别进行encryption)

根据您的encryption方式,对文件的其他重复数据删除也不起作用,从而使备份变大。

对于HD缺失:只要确保encryption足够强大,直到数据不再有其他人的价值。 或者你需要加强你的安全,所以这不会发生:

铁访问控制到服务器机房和全video监控等

tl,dr:通过监视每个文件+容器来防止bitrod,在它们变坏之前交换hdd,video监视服务器机房,并且防止在至less一个其他人不知道的情况下访问。