我有一台服务器,我想保护其内容。该服务器位于客户处。
有没有办法加密 RAID DISK 的内容(在硬件级别)?我需要的是,只要不提供所需的密码(加密密钥),服务器就无法启动
我将为 Miles 提供最佳答案,尽管答案并不完全针对我的问题。但从所有评论来看,这似乎无法通过硬件实现,或者……无法按照我的意愿实现。
答案1
是的。您可以使用以下方式加密 RAID 卷TrueCrypt或任何其他全盘加密软件。无论谁启动机器,如果没有加密密钥,卷的内容都将无法读取。
硬件加密的传统“好处”是提高性能,而不是提高安全性。由于当今许多高端处理器都支持硬件辅助 AES 加密,因此使用软件加密可能会获得类似(甚至更好)的性能。
答案2
不要这样做。
我正在尝试从发生故障的加密 RAID 阵列中恢复数据,这已经让我的雇主损失了比数据本身更多的钱。如果必须加密,请加密单个磁盘,或为重要内容创建加密分区。
答案3
已经有一个很棒的答案,但我也会给出我的答案。
就像所有安全措施一样,它总是取决于您能接受什么。您的系统实际上需要多少安全措施?您所说的一切都可以通过更好的物理安全措施来解决,例如更好的门、更好的锁和警卫。
一旦系统启动(我猜有时确实会启动),Windows 上的系统帐户和 Linux 上的根帐户通常将拥有对磁盘内容的完全访问权限,无论是否加密,如果有人真的入侵系统并获得其中一个帐户,他们就可以访问数据。您真正要防止的是有人拔出驱动器并实际拿走它。
如果在物理上尽可能地保证安全性之后,您的数据仍然需要加密(根据公司政策、法律或合同),那么您再次需要问,需要加密多少?
我应该使用自加密硬盘吗?有密码保护吗?
我是否应该使用 TPM 来加密进入 RAID 控制器的数据?
我应该使用 TrueCrypt 还是 BitLocker 加密整个磁盘?
我只需要加密几个文件吗?
我是否需要关闭 RAID 控制器上的内存缓存?
如果您同时加密逻辑磁盘(使用 TrueCrypt)和 RAID 本身,则可以防止某人直接交换未加密的 HDD 并从软件端的 Windows/Linux 存储库恢复密钥。他们需要两者。
答案4
为什么您没有使用硬件的Raid与光纤通道差异备份镜像?
是的,我知道这并不常见,但它有很多优点……您的 raid 只是带有 6 个硬盘的 raid 0(是的,剥离),每个硬盘都内置了硬件加密,因此攻击者(在离线模式下)需要猜测 6 个密码,说实话我更喜欢带有 USB 端口的硬盘作为密钥……我知道太贵了……打开硬盘电源需要连接加密狗(1GiB),攻击者需要这样的 1GiB,硬盘将这样的千兆字节复制到内部内存(是的,硬盘有一个 2G 缓存,一个用于密钥,一个用于快速读/写缓存,它还有一个红/绿二极管,当绿色时,您可以断开 USB 与硬盘的连接,密钥现在在硬盘内部内存上……有了 6 个这样的密钥,您就可以获得非常安全的硬件加密……攻击者需要猜测最多六千兆字节的密钥,哇!除此之外,您还可以使用 6 个 sata-iii raid控制器,带有光纤通道自动差异远程备份......您会得到最好的!
怎么運作?很简单:开机时使用六个 USB 1GiB 加密狗,每个加密狗直接连接到一个硬盘(硬盘有一个特殊端口,不需要 64 个字符的弱密码,它使用整个一千兆字节的密码),所以总共有 6 千兆字节的密钥,全部变绿后,取出六个 USB 闪存盘并将它们放在安全的地方(比如银行柜子,但在你的大楼里),然后 raid 0(条带化)将看到六个驱动器,并将形成一个非常快(接近 4GiB/s)的大磁盘,你可以在其中放置你的操作系统,现在我谈论的是安全数据以防故障,不需要备份,也不需要 raid 6(比 raid 5 好,但也毫无价值),我说的那个 raid 控制器有一个光纤通道连接到不同的远程备份存储,所以你将有如此巨大的磁盘镜像,但每个扇区都有历史扇区备份,因此你可以在需要的每一秒都在线获取整个磁盘状态,灾难来了,好吧,只需更换硬盘,并告诉光纤通道查看其在特定时间的特定秒的状态,它会将这种状态放到新磁盘上。
价格是最糟糕的部分...控制器的成本接近 10,000 英镑,每个磁盘的成本接近 2,000 英镑,而存储背板的成本如此之高将需要在另一个星球城市为整个建筑提供服务...每月和千兆字节的成本可能太多了,但我仍然说的不是价格问题,而是为了安全。
说实话,我只使用了一个简单的 XOR 密码,一个字节的数据和一个使用字节的密钥,因此攻击者会看到密钥长度等于数据长度,不需要复杂的算法,只需一个简单的 XOR 就足够了,为了使攻击者更加难以攻击,密钥字节的位置(不等于数据字节位置)通过快速算法计算得出。换句话说:Cyper[X]=Plain[X] XOR Key[MyAlgorith(X)],密钥长度 >= 普通长度。这在数学上可以证明是 101% 安全的,如果您不知道密钥,证明就像这句话一样简单:您可以拥有尽可能多的不同密钥和数据状态。因此,如果您有一个 8GiB 的 U 盘,那么您将有一个 8GiB 的密钥,这样就产生了 2^8GiB 不同的密钥,并且您有 2^8GiB 可能的不同数据状态,每个数据位都用其自己的密钥位加密,每个密钥位仅用于一个数据位,如果您尝试暴力破解,所有可能的密钥都是一组等于可能的数据状态集的集合,因此无法知道哪一个是正确的。密钥仅用于此类磁盘。
也可以使用较小大小的密钥,因为 MyAlgorith 将以攻击者无法知道/猜测的方式使用相同位的密钥,这种算法使用密钥的一部分来创建 XtoY 转换,因为多个 X 值将给出相同的 Y(注意不要使用简单的 mod 运算,它必须更复杂),因此一个简单的 8GiB 密钥将生成与完整硬盘长度密钥相同的集合,演示起来很复杂,但我会尝试:给定数据的 X 位置,将使用密钥的哪个字节?DPosition 位于密钥数据上,取决于密钥数据和这样的 X,但 X+1 不是 Y+1,其中 X 是纯文本数据上的位置,Y 是密钥数据上的位置,这将使暴力破解需要使用测试密钥的每个字节来测试加密数据的每个字节,因此最后它将是一个具有 2^hdd 大小可能状态的集合。基本情况是:你没有这样的 8GiB 密钥,因此你创建一个 2^8GiB 密钥集,你必须使用每个密钥测试解密,但由于用于每个数据字节的密钥位置还取决于另一个短密码,因此你需要使用密钥上 2^(8*64) 个可能位置来检查每个数据字节(密钥长度为 8GiB = 2^33),因此在实践中,每个数据字节都需要与密钥的每个字节进行测试,如果密钥具有所有 0 到 255 字节的可能值,它将减少测试,因此每个字节都需要与每个 2^8(256)个可能的值进行异或,因此每个数据字节都会获得 256 个可能的值,因此从数学上讲不可能知道哪个是好的,并且由于每个字节都必须遵循此过程,因此你将得到一个强力附加,它给出 2^(大小由于 hdd) 中存在可能的纯文本数据,因此攻击者将无法猜测任何纯文本数据字节。
该算法以字节为基础,但这种想法也适用于 512 字节字(而不是 1 字节字),并且适用于任何长度。
因此,为了安全起见,最好的方法是拥有一个巨大的密钥和一个好的 X 到 Y 算法,并使用简单的 XOR 进行加密/解密。
注意:备份是由硬件将每个扇区写入操作发送到历史远程存储服务器完成的,因此您可以获取给定毫秒或日期时间的状态...发送到远程服务器的此类信息是写入磁盘的真实数据,因此它是加密的,而不是纯文本...就像克隆硬盘板信息一样。
光纤通道如何工作?很简单:当硬盘在内部将数据写入盘片时,通过光纤通道将副本发送到 raid 控制器,然后 raid 控制器通过其外部光纤将该数据重新发送到远程大型、非常大的存储系统。
重建是如何进行的?很简单:控制器要求提供日期时间状态(精确的毫秒数),然后远程服务器查找每个硬盘扇区表(使用最接近该扇区的状态,日期时间小于或等于该扇区),将该扇区发送到控制器,控制器通过光纤将其发送回硬盘,然后硬盘将其写入盘片,...重建后,所有硬盘都将具有该毫秒的精确克隆。
所有这些与有效稳定分区状态下的快照点一起工作,共同构成一个巨大、安全且可靠的存储系统。
所有系统的弱点:攻击者在系统运行时发起攻击,通过中间人连接,使用 USB 调试设备克隆主板总线信息等...虽然无法记录使用的密钥(除非启动服务器的管理员是个白痴)但它可以将清晰的数据输入主板,但由于这是无法避免的(攻击者需要物理访问主板),系统与其他薄弱环节一样安全(互联网连接等)...笑,但这是真的:一个白痴管理员在看到大量电缆和设备添加到计算机上时启动了计算机,这么傻的人怎么能启动它?如果您发现计算机在离线状态下被操作,请不要启动它,直到您确认此类操作是正确且安全的。
工作项目的总价(用于测试该配置):每月100万英镑,为期一年的工作测试项目。
PD:我没有被授权透露 raid 控制器的名称,但可以在 google 和 youtube 上找到一些测试(带有审查部分)视频,我不知道这个论坛上是否可以接受链接,而且我不想被视为供应商。