Archlinux の rootfs encryption をリモートから unlock する
読了まで:約3分
とりあえず、試行錯誤した末に出来たのでメモ。
今回の作業の概要
_[Archlinux _ on [[Mac mini late 2012]] with rootfs encryption]
と言う環境で、
ssh 経由で roorfs encryption の unlock が出来る
というのを作った。
下準備
とりあえず今回は Wi-Fi から繋げたかったので、
- Archlinux on Mac mini late 2012 with rootfs encryption
から Wi-Fi 接続出来る様に、下記のパッケージを導入した:
wpa_supplicant
-pacman
からb43-firmware
-yaourt
から
まあ後は Arclinux で Wi-Fi 使う要領で作業すれば良い。 あと、基本的に Mac mini に Archlinux を入れるには、
- USB 接続の Keyboard
- Ehternet 接続できるネットワーク
辺りがないと、ドライバとかの加減で pacstrap
出来ねぇとかなるので、その辺りは用意しておいた方が良い。
ちなみに僕は、押し入れなどで眠っていた、
- PS/2 Keyobard + PS/2 <=> USB のケーブル
- 古い Ehternet Converter の子機
を使いました。
rootfs encryption の remote unlock over Wi-Fi
これがまあ面倒だったんだけど、基本的には、
をアレンジして、下記の様になった:
- パッケージの追加
mkinitcpio-nfs-utils
(pacman)mkinitcpio-dropbear
(yaourt)mkinitcpio-utils
(yaourt)
- ssh 鍵の追加
- 今回だと
/etc/dropbear/root_key
に ssh 公開鍵を登録する
mkinitcpio
用にwifi
フックの追加
/etc/mkinitcpio.conf
の編集とinitramfs
の rebuidMODULES
に [[Mac mini late 2012]] 用の Wi-Fi ドライバを追加
- (環境固有)
b43
,bcma
FILES
に 上記ドライバが動作するためのファームウェアを追加 (環境固有)/lib/firmware/b43/ht0bsinitvals29.fw
/lib/firmware/b43/ht0initvals29.fw
/lib/firmware/b43/ucode29_mimo.fw
BINARIES
にwpa_passphrase
とwpa_supplicant
を追加 (共通)HOOKS
を 編集encrypt
をwifi net dropbear encryptssh
に- あとは
mkinitcpio -p linux
で initramfs を rebuild
- Bootloader の kernel parameter の編集 これは各ネットワーク環境に合せて
ip=
を追加する
- 僕の場合だと:
ip=::192.168.2.1:255.255.255.0::wlan0:dhcp
- ちなみに、これに指定するパラメーターは nfsroot (kernel.org) を参照
以上
それで、ここまでで設定とかミスってなければ、
- [[Archlinux]] on [[Mac mini late 2012]]
を起動した際に ssh が立ち上がって、リモート経由で rootfs unlock 出来る様になる……はず。なんかミスってたら、各自設定とか見直してください。ちなみに僕は wifi
フックを作るときに SSID
の書き方をミスっていて、これで数時間ぐらいは詰ってました。
あと、今回のこれは initramfs
とかを弄るため、 なにかミスってて起動しなくなる と言うコトが良く起きます。そのため、USB Stick 等で Archiso を起動できる Recovery 環境が無いとつらいかもです。はい。
という事で今回のメモは以上。まあ転んでも泣かないヒト向けのメモでした。
#やり方 #使い方 #まとめ #Linux #Archlinux - #2017-03 #2017-03-06