如何加密我的 /tmp 目录?

Ave*_*han 6 encryption tmp

在阅读了有关 tmp 多久被清除的这个问题后,如果 tmp 被加密对我们的设置来说是最好的。我如何加密它?

我的 fstab 看起来像这样:

proc            /proc           proc    nodev,noexec,nosuid 0       0
/dev/mapper/vg_doulos-root /               ext4    errors=remount-ro 0       1
# /boot was on /dev/sda1 during installation
UUID=205a1a54-7dfa-45a6-a7e3-4a7234b3a473 /boot           ext4    defaults        0   2
/dev/mapper/vg_doulos-home /home           ext4    defaults        0       2
/dev/mapper/vg_doulos-tmp /tmp            ext4    defaults        0       2
# swap was on /dev/sda2 during installation
#UUID=705e9f69-bf95-4d44-9119-c40076d10333 none            swap    sw              0  0
/dev/mapper/cryptswap1 none swap sw 0 0
Run Code Online (Sandbox Code Playgroud)

密码表:

# <target name> <source device>         <key file>      <options>
cryptswap1 /dev/sda2 /dev/urandom swap,cipher=aes-cbc-essiv:sha256
Run Code Online (Sandbox Code Playgroud)

把这样的东西放在 crypttab 中就足够了吗?

crypttmp /dev/mapper/vg_doulos-tmp /dev/urandom

然后这个替换fstab中的tmp文件条目?

/dev/mapper/crypttmp /tmp ext4 defaults 0 2

Ave*_*han 4

crypttab 中正确的咒语应该如下所示:

crypttmp /dev/mapper/vg_doulos-tmp /dev/urandom precheck=/bin/true,tmp,size=256,hash=sha256,cipher=aes-cbc-essiv:sha256
Run Code Online (Sandbox Code Playgroud)

最重要的部分是precheck=/bin/true. /tmp 未安装的原因是 cryptsetup 由于预检查而失败。预检查发现 LVM 分区已格式化ext4并拒绝继续。

fstab 条目应如下所示:

/dev/mapper/crypttmp /tmp ext4 defaults 0 2