LUKSな/homeのUSBでの解錠

2017.12.29

LUKSな/homeを,システム起動時にUSBからロック解錠をする.

  • UUID=A: crypto-homeという名前で,/homeにマウントされるLUKSパーティション
  • UUID=B: LUKS Keyが/keyにあり,/mnt/luksusbにマウントされるUSBキー

UUIDはlsblk -fで取得できる.

鍵は次のコマンドで生成できる.

tr -dc A-Za-z0-9 </dev/urandom | fold -w ${1:-64} | head -n 32 >/mnt/luksusb/key

/etc/fstab にLUKSパーティションおよびUSBキーのマウント情報を書く.

# LUKS partition
/dev/mapper/crypto-home /home ext4 defaults 0 2
# USB LUKS key
UUID=B /mnt/luksusb exfat defaults,nofail,x-systemd.device-timeout=5 0 2

/etc/crypttab にLUKSパーティション情報を書く.

crypto-home UUID=A /mnt/luksusb/key

通常,Systemdは/etc/crypttabの暗号パーティションを処理してから /etc/fstabを処理するが,それではUSBをマウントする前に暗号パーティションを マウントしようとし,これでは解錠できない. そこで,/etc/default/cryptdisks にUSBの情報を書くことで,SystemdにUSBを LUKSパーティション(/home)より先にマウントすることができる.

CRYPTDISKS_MOUNT='/mnt/luksusb'

新しい記事: 湿度センサ 2018.03.05
古い記事: Arch Linuxをインストール 2017.11.01