如何在Debian上创建一个随机密钥,加密的交换分区,将其称为“ by-uuid”?
明智的做法是,如果在GNU / Linux系统上实现了任何类型的块设备加密,也要对交换分区进行加密,因为任何解密的数据都可以随时以明文形式写入交换。 在debian手册页上查看“ crypttab”,我看到了一个在启动时创建随机密钥交换分区的示例,因此随着引导的进行,密钥是随机设置的,并且只有系统本身知道: # Encrypted swap device cswap /dev/sda6 /dev/urandom cipher=aes-cbc-essiv:sha256,hash=ripemd160,size=256,swap 在此示例中,交换设备由常规dev路径引用,即 /dev/sda6 例如,如果插入了USB驱动器,则绝对设备路径可能会更改,并在启动时重新分配。如果用户/dev/sda6碰巧是一个与预期不同的分区,并且随后被随机交换数据覆盖,则用户将非常不高兴! 因此,解决方案似乎是:使用UUID代替设备路径(因为UUID不应更改),替换/dev/sda6为/dev/disk/by-uuid/<whatever the uuid of dev/sda6 is> 但是……这就是问题所在:每次cryptsetup在引导时重新创建加密的交换分区时,都会为其生成一个新的UUID!h! 因此,我们需要以某种方式保留此加密文件系统的UUID。我认为cryptsetup可以通过其--offset开关来做到这一点,从而允许保留LUKS标头和UUID。 我找到了以下URL:https : //wiki.archlinux.org/index.php/System_Encryption_with_LUKS#Using_UUIDs_with_encrypted_swap_partitions 有谁知道如何在Debian OS上实现针对Arch Linux所述的解决方案?该文档中引用的初始化脚本似乎在Debian OS上不存在 谢谢! 编辑 一个人可以使用以下命令使用ecryptfs达到相同的目的(加密的交换空间): ecryptfs-setup-swap 避免困扰设备加密的问题。看看这个AskUbuntu查询