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

これがまあ面倒だったんだけど、基本的には、

をアレンジして、下記の様になった:

  1. パッケージの追加
  • mkinitcpio-nfs-utils (pacman)
  • mkinitcpio-dropbear (yaourt)
  • mkinitcpio-utils (yaourt)
  1. ssh 鍵の追加
  • 今回だと /etc/dropbear/root_key に ssh 公開鍵を登録する
  1. mkinitcpio 用に wifi フックの追加
  1. /etc/mkinitcpio.conf の編集と initramfs の rebuid MODULES に [[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
  • BINARIESwpa_passphrasewpa_supplicant を追加 (共通)
  • HOOKS を 編集 encryptwifi net dropbear encryptssh
  • あとは mkinitcpio -p linux で initramfs を rebuild
  1. 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

にゃるら(カラクリスタ)

『輝かしい青春』なんて失かった人。
次に備えて待機中。

今は趣味でプログラミングをして
生活しています。