[О блоге]
[наверх]
[пред]
[2020-07-19 15:49:26+03:00]
[50d9ff303ee4920bc738f28af5dc4dfb0af9b2e2]
Темы: [bsd]
Попробовал FreeBSD шифрование корневого раздела
Прежде никогда не имел с этим опыта. Собственно, никаких проблем не
увидел, даже GPT label можно без проблем везде использовать. Точнее с
одним неудобством, похоже hard-coded в ядре: в начале при загрузке он
попросит пароль для какого нибудь daXsY и, введя неправильно несколько
раз пароль, он начнёт спрашивать уже про gpt/XXX устройства. Вот
примерный план как установил систему, с отдельным /boot разделом и
зашифрованным ZFS:
# gpart create -s GPT diskid/XXX
# gpart add -t freebsd-boot -a 4K -s 512K -l MYLOADER diskid/XXX
# gpart bootcode -b /boot/pmbr -p /boot/gptboot -i 1 diskid/XXX
# gpart add -t freebsd-ufs -a 4K -s 1G -l MYBOOT diskid/XXX
# gpart add -t freebsd-zfs -l MYROOT diskid/XXX
# dd if=/dev/urandom of=/tmp/key bs=64 count=1
# geli init -K /tmp/key -s 4K gpt/MYROOT
# geli attach -k /tmp/key gpt/MYROOT
# geli configure -b -g gpt/MYROOT
(не знаю нужен ли эти флаги, или только -b или вообще никого, не пробовал отключать)
# zpool create zroot gpt/MYROOT.eli
# zfs set mountpoint=/tmp/zroot compression=lz4 atime=off zroot
# zfs mount zroot
# for what in base kernel ; do tar xfC /usr/freebsd-dist/$what.tar.xz /tmp/zroot ; done
# mkdir /tmp/boot
# newfs -Ut /dev/gpt/MYBOOT /tmp/boot
# cd /tmp/zroot
# tar cf - boot | tar xfC - /tmp/boot
# zfs set mountpoint=none zroot
# zpool export zroot
# geli detach gpt/MYROOT
# mkdir /tmp/boot/boot/keys
# mv /tmp/key /tmp/boot/boot/keys/myroot.key
# cat > /tmp/boot/boot/loader.conf <<EOF
geom_eli_load="YES"
geom_myroot_keyfile_load="YES"
geom_myroot_keyfile_type="gpt/MYROOT:geli_keyfile"
geom_myroot_keyfile_name="/boot/keys/myroot.key"
zfs_load="YES"
vfs.root.mountfrom="zfs:zroot"
EOF
# umount /tmp/boot
# reboot
[оставить комментарий]