Initramfs

在 Fedora 上使用 dracut 將 dropbear 添加到 initramfs

  • December 20, 2013

我正在嘗試將 dropbear 添加到我的 initramfs 中,以便我可以通過遠端 SSH 會話解鎖加密磁碟(如此所述)。我正在執行 Fedora 16,它顯然使用 dracut 來生成 initramfs 映像。誰能解釋(或提供連結)如何使用此設置將 dropbear 添加到 initramfs?

更新:

我一直在嘗試了解有關 dracut 的更多資訊,但我發現那裡沒有大量資訊。這是我目前的理解,如果有人可以對此發表評論:

  • 我需要創建一個新的 dracut 模組,它將預安裝掛鉤安裝到 initramfs 映像中。
  • 在嘗試解鎖/掛載 LUKS 文件系統(這可能發生在“掛載”階段)之前,預掛載鉤子將啟動 dropbear 伺服器。
  • 啟動 dropbear 後,我應該能夠通過 SSH 連接到伺服器並提供密碼來解鎖它,如另一篇文章中所述。
  • 我還需要添加一個 pre-pivot 掛鉤,它將在引導過程 chroot 到最終根分區之前停止 dropbear 伺服器。

我能夠拼湊出我自己的 dracut 模組,該模組將 dropbear 添加到 initramfs 並在 init 期間啟動它。它還用一個自定義腳本替換了 dracut-crypt 模組中的 cryptroot-ask 腳本(它會詢問您的 LUKS 密碼),該腳本等待您自己解鎖文件系統(例如,通過 SSH)(以及一點額外的花招)。

如果有人想使用或改進它,我已經把它放在bitbucket上。它目前不會在啟動後關閉 dropbear 伺服器,因此這可能是可以改進的。

引用自:https://unix.stackexchange.com/questions/67005