なぜか分からないけど追いつけないこのガイドライン私のDebianの屋台で。 dropbearとbusyboxをインストールした後に実行しようとしましたが、initramfs -u
奇妙な警告が表示されました。
# update-initramfs -u
update-initramfs: Generating /boot/initrd.img-4.9.0-4-amd64
dropbear: WARNING: Invalid authorized_keys file, remote unlocking of cryptroot via SSH won't work!
その後、ファイルを表示しようとしましたが、/etc/initramfs-tools/root/.ssh/id_rsa
initramfsフォルダにフォルダがありません。root
私も走ってみました。
dropbearkey -t dss -f /etc/initramfs-tools/etc/dropbear/dropbear_dss_host_key
ただし、フォルダがないため、/etc/initramfs-tools/etc/
このコマンドも失敗します。もちろん、これらのフォルダを作成できますが、この奇妙な動作はより深いバグに起因するものではありません。役に立つ場合は、initramfsフォルダの内容は次のとおりです。
me@server:/etc/initramfs-tools# ls
conf.d hooks initramfs.conf modules scripts update-initramfs.conf
ありがとうございます!
答え1
#debianの助けのおかげで、ついに解決策を見つけました。最近のDebianでは、プロセスはかなり異なるようです。これは新しいものです:
まず確認してインストールdropbear
しdropbear-initramfs
てください。
sudo apt install busybox dropbear*
~/.ssh/id_rsa.pub
その後、ファイルに公開キー(ほとんどの場合)を追加します(編集:最近はdropbearに/etc/dropbear-initramfs/authorized_keys
あるようです。ファイルはPeter Schillingの答えに基づいています)。/etc/dropbear/initramfs/authorized_keys
initramfs
その後、変更を考慮して更新します。 : update-initramfs -u
それだけです!
dropbear
との間のキーの競合を回避するには、(同じIPを共有しますが別のキーを使用する)、openssh
クライアントに~/.ssh/config
次のエントリを追加する必要があります。
Host myserver_luks_unlock
User root
Hostname <myserver>
# The next line is useful to avoid ssh conflict with IP
HostKeyAlias <myserver>_luks_unlock
Port 22
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa
次に、次のコマンドを使用して簡単に接続します。
ssh myserver_luks_unlock
プロンプトが表示されたら、busyboxのテキストに提案されているとおりに入力してください。
cryptroot-unlock
楽しむ!
答え2
いくつかの追加の詳細です。
まず、SSHクライアントにまだ秘密鍵と公開鍵のペアがない場合は、次のようにssh-keygen
生成する必要があります。ここ。
第二に、以下が必要であることを指摘したいと思います。
あなたの追加顧客の/etc/dropbear-initramfs/authorized_keys ファイルの公開鍵(ほとんど ~/.ssh/id_rsa.pub)サーバー上
それはすべてです。クライアント側から:
c_user@client:~$ scp .ssh/id_rsa.pub s_user@server:id_rsa.pub
サーバーから:
s_user@server:~$ sudo sh -c "cat id_rsa.pub >> /etc/dropbear-initramfs/authorized_keys"
s_user@server:~$ rm id_rsa.pub
最後に、サーバーに接続することが非常に重要です。根(rootアカウントが無効になっていても同じです)