ログイン時に暗号化 /home をマウントする

2020年4月5日

ArchLinux32の設定

homeパーティションを暗号化する

sudo cryptsetup -v luksFormat /dev/sdaXX
確認は sudo cryptsetup -v luksDump /dev/sdaXX

sudo cryptsetup open /dev/sdaXX crypthome
sudo mkfs.jfs -L ラベル名 /dev/mapper/crypthome

sudo mount /dev/mapper/crypthome /mnt
...
sudo umount /mnt
sudo cryptsetup close crypthome

/etc/crypttab と /etc/fstab 編集する。

ログイン時に暗号化 /home をマウントする

https://wiki.archlinux.jp/index.php/Dm-crypt/%E3%83%AD%E3%82%B0%E3%82%A4%E3%83%B3%E6%99%82%E3%81%AB%E3%83%9E%E3%82%A6%E3%83%B3%E3%83%88
この通りにやってみる

/usr/local/bin/savepass
/usr/local/bin/securemount
/usr/local/bin/secureumount
これらに実行権限の設定する。

/etc/fstab と /etc/crypttab の関連部分をコメントにする。

これでログインしてみる

スクリプトの中のkeyctlがエラーになる。パーミッション付属??
この方法は保留にする。

pam_mount

参考: man 5 pam_mount.conf

sudo pacman -S pam_mount

https://wiki.archlinux.jp/index.php/Pam_mount 一部が古い情報
/etc/security/pam_mount.conf.xml

<volume user="user-name" fstype="auto" path="/dev/sdaXX" mountpoint="/home" options="fsck,noatime" />
<mkmountpoint enable="1" remove="true" />

https://wiki.archlinux.org/index.php/Pam_mount
/etc/pam.d/system-login
を編集する。

ログは `journalctl -xe` コマンドで見る。

エラー mount.crypto_LUKS: No dmcrypt cipher specified (use -o cipher=xxx)
原因: パーティション が LUKS Ver 1 ではなく 2

lusk1 で フォーマット

sudo cryptsetup -v luksFormat --type=luks1 /dev/sdaXX
sudo mkfs.jfs -L ラベル名 /dev/mapper/data
sudo mount /dev/mapper/data /mnt

これでログインしてみる

マウントでき、ログイン出来るようになった。