Luks

如何以非互動方式向“dmcrypt luksFormat”提供密碼?

  • August 12, 2021

我正在編寫一個自動設置測試環境虛擬機的腳本。這個腳本應該自動為我格式化一個 dmcrypt+LUKS 分區,並帶有一定的密碼。因為這是一個本地測試環境,所以我不關心密碼的安全性,我只希望整個 VM 設置過程是自動化的且非互動的。

如何以非互動方式向“dmcrypt luksFormat”提供密碼?我想使用密碼片語,而不是密鑰,因為在生產中我們也為 LUKS 使用密碼片語。

首先要做的是呼叫正確的命令:它是cryptsetup,不是dmcrypt

cryptsetup luksFormat /dev/vda2

第二件事是您可以傳遞另一個參數以從文件或標準輸入(使用-)讀取密碼。

echo -n "This isn't a very secure passphrase." | cryptsetup luksFormat /dev/vda2 -

請注意,該-n標誌是必要的,echo以防止將換行符附加到密碼中。

cryptsetup有關傳遞密鑰材料的其他方法,請參見手冊頁。

如何使用 sudo 發送密碼

echo 'passphraze' | echo 'sudopass' | sudo -S cryptsetup luksOpen /dev/sda5 media -d -

引用自:https://serverfault.com/questions/513605