「誤家庭における小規模ネットワーク構築/ルートファイルシステム暗号化」の版間の差分
ナビゲーションに移動
検索に移動
(→後処理) |
|||
| (同じ利用者による、間の12版が非表示) | |||
| 1行目: | 1行目: | ||
= PCで |
= PCで作業 = |
||
== ルートファイルシステムのバックアップ == |
== ルートファイルシステムのバックアップ == |
||
| 32行目: | 32行目: | ||
</syntaxhighlight> |
</syntaxhighlight> |
||
== 設定ファイル |
== ファイルシステムの設定ファイルを修正 == |
||
=== /etc/fstab === |
=== /etc/fstab === |
||
| 48行目: | 48行目: | ||
<pre> |
<pre> |
||
cryptroot UUID=XXXXXX none luks |
cryptroot UUID=XXXXXX none luks |
||
</pre> |
|||
== chrootして作業 == |
|||
<syntaxhighlight lang="bash"> |
|||
$ sudo cp /usr/bin/qemu-aarch64-static /mnt/usr/bin/ |
|||
$ sudo mount --bind /dev /mnt/dev |
|||
$ sudo mount --bind /dev/pts /mnt/dev/pts |
|||
$ sudo mount -t proc /proc /mnt/proc |
|||
$ sudo mount -t sysfs /sys /mnt/sys |
|||
$ sudo mount -t tmpfs /run /mnt/run |
|||
$ sudo cp /etc/resolv.conf /mnt/etc/resolv.conf |
|||
$ sudo mount /dev/sdX /mnt/boot/firmware |
|||
$ sudo chroot /mnt /usr/bin/qemu-aarch64 /bin/bash |
|||
</syntaxhighlight> |
|||
=== cryptsetupのインストール === |
|||
<syntaxhighlight lang="bash"> |
|||
$ apt update |
|||
$ apt install cryptsetup cryptsetup-initramfs |
|||
</syntaxhighlight> |
|||
=== /etc/initramfs-tools/initramfs.conf === |
|||
<pre> |
|||
MODULES=most |
|||
</pre> |
</pre> |
||
=== cmdline.txt === |
=== cmdline.txt === |
||
<pre> |
|||
root=/dev/mapper/cryptroot |
|||
</pre> |
|||
削除 |
削除 |
||
| 57行目: | 88行目: | ||
quiet splash |
quiet splash |
||
</pre> |
</pre> |
||
=== initramfsの更新 === |
|||
<syntaxhighlight lang="bash"> |
|||
$ update-initramfs -u -k 6.18.39+rpt-rpi-v8 |
|||
$ update-initramfs -u -k 6.18.39+rpt-rpi-2712 |
|||
</syntaxhighlight> |
|||
== 後処理 == |
|||
<syntaxhighlight lang="bash"> |
|||
$ sudo umount /mnt/dev/pts |
|||
$ sudo umount /mnt/dev |
|||
$ sudo umount /mnt/proc |
|||
$ sudo umount /mnt/sys |
|||
$ sudo umount /mnt/run |
|||
$ sudo umount /mnt/boot/firmware |
|||
$ sudo umount /mnt |
|||
$ sudo cryptsetup close cryptroot |
|||
</syntaxhighlight> |
|||
2026年9月6日 (日) 18:13時点における最新版
PCで作業
ルートファイルシステムのバックアップ
$ sudo rsync -aHAX --numeric-ids --info=progress2 \
/mnt/rpi-root/ /mnt/backup/
LUKS2で暗号化
$ sudo cryptsetup luksFormat \
--type luks2 \
--cipher aes-xts-plain64 \
--key-size 512 \
--hash sha256 \
--pbkdf argon2id \
--iter-time 2000 \
/dev/sdX
$ sudo cryptsetup open /dev/sdX cryptroot
$ sudo mkfs.ext4 -L rootfs /dev/mapper/cryptroot
ルートファイルシステムの復元
sudo rsync -aHAX --numeric-ids \
--info=progress2 \
/mnt/backup/ \
/mnt/newroot/
ファイルシステムの設定ファイルを修正
/etc/fstab
/dev/mapper/cryptroot / ext4 defaults,noatime 0 1
/etc/crypttab
$ sudo cryptsetup luksUUID /dev/sdX
cryptroot UUID=XXXXXX none luks
chrootして作業
$ sudo cp /usr/bin/qemu-aarch64-static /mnt/usr/bin/
$ sudo mount --bind /dev /mnt/dev
$ sudo mount --bind /dev/pts /mnt/dev/pts
$ sudo mount -t proc /proc /mnt/proc
$ sudo mount -t sysfs /sys /mnt/sys
$ sudo mount -t tmpfs /run /mnt/run
$ sudo cp /etc/resolv.conf /mnt/etc/resolv.conf
$ sudo mount /dev/sdX /mnt/boot/firmware
$ sudo chroot /mnt /usr/bin/qemu-aarch64 /bin/bash
cryptsetupのインストール
$ apt update
$ apt install cryptsetup cryptsetup-initramfs
/etc/initramfs-tools/initramfs.conf
MODULES=most
cmdline.txt
root=/dev/mapper/cryptroot
削除
quiet splash
initramfsの更新
$ update-initramfs -u -k 6.18.39+rpt-rpi-v8
$ update-initramfs -u -k 6.18.39+rpt-rpi-2712
後処理
$ sudo umount /mnt/dev/pts
$ sudo umount /mnt/dev
$ sudo umount /mnt/proc
$ sudo umount /mnt/sys
$ sudo umount /mnt/run
$ sudo umount /mnt/boot/firmware
$ sudo umount /mnt
$ sudo cryptsetup close cryptroot