meta data for this page
encrypted SWAP
apt install cryptsetup
auto create
Auto create encrypted swap with random key for every boot. Problem is that given block device will be filled with random data when swap is created.
So label / UUID is lost for next reboot. Need to use direct device names or use symlinks like /dev/disk/by-id/…
which can be also unsafe and can hit another partition.
Workaround: Put LABEL / UUID once on block device and leave small gap before real swap data to do not overwrite FS signature:
mkfs.ext2 -L cryptswap2 /dev/nvme0n1p3 1M blkid /dev/nvme0n1p3 dev/nvme0n1p3: LABEL="cryptswap2" UUID="6b1b9a70-f50d-4d29-b3c6-6c7e2b819f39" ...
Note: offset
below is counted in sectors of 512B.
- /etc/crypttab
swap2 LABEL=cryptswap2 /dev/urandom swap,offset=2048,cipher=aes-xts-plain64,size=512,sector-size=4096,discard
Apply crypttab
changes:
systemctl daemon-reload systemctl restart cryptsetup.target
- /etc/fstab
/dev/mapper/swap2 none swap defaults,discard=once 0 0
NOTE: discard
on encrypted device has security implications!