经过研究,我得出的结论是,我的设置不够标准,无法在互联网上得到直接的答案。
我的硬件:
- i7 950 处理器
- 24 GB DDR3
- 7 个 2TB 7200 RPM HDD
我的目标:
- 快速、轻量、安全的服务器,用于运行 CPU/内存密集型程序(基本上以 80% 的效率持续运行服务器)
- 超大存储空间,可存放电影、电视等
- 托管一些虚拟机(比如说 3 个 ubuntu 桌面 14.04)
- 除外部硬件防火墙外,还有系统防火墙(倾向于 ufw)
- 加密所有 7 个磁盘
- 需要 USB 驱动器和密码才能访问驱动器并启动 Ubuntu 14.04 服务器
软件 RAID 分区:
- md0 300GB 软件 RAID 10
- md1 9.5TB 软件 RAID 5
每个磁盘的分区:
- 100GB 软件 RAID 10
- 1.9TB 软件 RAID 5
- 10GB 交换
我知道 Ubuntu Live 安装程序使用 dm-crypt 和 AES 选项。这会对我的性能产生多大影响?是否值得不对 RAID 5 阵列进行加密,因为加密并不那么重要?除了密码短语之外,我如何才能要求使用带有私钥的 USB 驱动器来启动系统?我希望 USB 驱动器仅在启动系统时才需要,如果系统正在使用中,则将其删除。有没有办法使用更强的加密?
据我所知,AES 是性能最佳的选择。
我应该如何使用上述参数在 RAID 10 和 RAID 5 上使用 AES 加密 Ubuntu Server 14.04?
答案1
软件 RAID:别这么做!
我整个职业生涯中从未见过软件 RAID优雅地从损坏的硬件中恢复,而我已经看到大量软件 RAID在根本没有硬件问题的情况
下出现问题......备份:
RAID 可以防止单磁盘故障(或 RAID-6 中的双磁盘故障)!它是不是替代备份!
使用 CloneZilla 每月备份一次系统,使用您喜欢的任何软件每周备份一次文件。除非加密完全基于密码哈希,否则不要加密备份,因为如果丢失密钥,则使用密钥加密的加密备份是无法恢复的……
定期备份用于启动系统的 USB 密钥(例如在系统关闭时),并使用速尔USB 记忆棒(4GB 应该足够了),而不是多层陶瓷电容器一。
软件加密:
除了硬件 RAID 之外,我建议您在硬件 RAID 子板之上安装一个合适的硬件加密子板。
这是我对您的用例的建议...
答案2
对于除了密码之外还使用密钥文件,这个链接应该有帮助(虽然我自己没有尝试过这些说明): https://www.finnie.org/2009/07/26/keyfile-based-luks-encryption-in-debian/
LUKS 的 FDE 对 CPU 的影响可以忽略不计,尤其是当你拥有一台内置 AES 优化的 i7 时。除非你试图榨干服务器最后 2% 的处理能力,否则这不会成为问题。你的 IO 速度永远是瓶颈,而不是 AES。相比之下,你的文件系统挂载选项(如 atime 或启用/禁用驱动器睡眠)将在每个用例中对性能产生更大的影响。
编辑:另外,我实际上建议软件 RAID。硬件 RAID 非常好,直到您的 RAID 卡坏了,您必须弄清楚如何提取数据或重建数据,这需要采购卡的精确复制模型(运输可能需要几天时间)。而您是否可以插入驱动器并开始使用取决于卡提供的选项。与软件 RAID 相比,硬件 RAID 可以显著提高性能,但一旦发生故障,就会令人头疼。在大多数情况下,软件 RAID 也更易于管理。