「dmcrypt luksFormat」にパスフレーズを非対話的に提供する方法は?


9

テスト環境の仮想マシンを自動的にセットアップするスクリプトを書いています。このスクリプトは、特定のパスフレーズを使用して、自動的にdmcrypt + LUKSパーティションをフォーマットします。これはローカルテスト環境なので、パスフレーズのセキュリティは気にしません。VMセットアッププロセス全体を自動化して非対話型にするだけです。

「dmcrypt luksFormat」にパスフレーズを非対話的に提供するにはどうすればよいですか?キーではなくパスフレーズを使用したいのは、本番環境ではLUKSにもパスフレーズを使用するためです。

回答:


17

最初に行うことは、正しいコマンドを呼び出すことです。それはcryptsetup、ではありませんdmcrypt

cryptsetup luksFormat /dev/vda2

2つ目は、別の引数を渡して、ファイルから、または標準入力から(を使用して-)パスフレーズを読み取ることができることです。

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

そのノート-nフラグが必要であるechoパスワードに付加されるのラインフィードを防止します。

cryptsetupキーマテリアルを渡す他の方法については、manページを参照してください。


3
この方法でボリュームを作成した後、ボリュームのロックを解除するのが困難でした。改行文字が私をつまずかせていました。printf "This isn't a very secure passphrase." | cryptsetup luksFormat /dev/vda2 -私にとってはうまくいきました。YMMV。
Kenny Rasschaert、2014年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.