パスワード自動化cryptsetup-luksAddKeyの使い方は?

パスワード自動化cryptsetup-luksAddKeyの使い方は?

コンテキスト:起動時に表示されるパスワードをUSBドングルに保存されているキーファイルに置き換えました。私の質問には次のステップが含まれます# cryptsetup luksAddKey /path/to/mykeyfile

私が生成した追加キーは次のように生成されましたdd if=/dev/urandom of=mykeyfile bs=512 count=4

**私の目標はbashで実行することです(動作します...)。出るパスワードプロンプトが表示され、最後にプロンプ​​トが0になります。 **私の質問:

  • 似たようなことができますかcryptsetup luksAddKey -passphrase "Hello, my name is Jolly Roger" /path/to/mykeyfile
  • それとも、少なくともスクリプト呼び出しにパラメータとしてパスワードを渡すことはできますか?# sh myscript.sh -passphrase "Jolly..."

これはSSHに存在しますsshpass

/etc/crypttabセキュリティ上の注意:パスワードはキーファイルに置き換えられているため、スクリプトにパスワードを書き込むことはまったく気にしません。また、機密の内部メンバーもスクリプトを使用できます。これはプライベートです。

ベストアンサー1

キーに改行文字が含まれていない場合は、単にパイプで接続できます。

# cryptsetup luksFormat foobar.img originalkey

WARNING!
========
This will overwrite data on foobar.img irrevocably.

Are you sure? (Type uppercase yes): YES

# cryptsetup luksAddKey foobar.img newkey < originalkey

残念ながら、cryptsetupキーファイルの処理にはいくつかのモードがあり、改行文字などはそのモードによって異なります。特殊文字キーの場合、パイプは機能しません。

# cryptsetup luksAddKey foobar.img newkey < originalkey
No key available with this passphrase.

この場合、keyfileオプションが必要です。

# cryptsetup luksAddKey --key-file=originalkey foobar.img newkey

またはまだパイプを使用したい場合は、

# cryptsetup luksAddKey --key-file=- foobar.img newkey < originalkey

混乱していますか? 512文字以下のASCII専用キーを使用して印刷できない文字が含まれていない場合は、あいまいさを避けるため、ピンチで手動で入力できます。

可能であれば、このようなことは避けるべきです--password=xyz。この情報は公開され、プロセスリスト、シェル履歴、その他の場所にあなたのパスワードが公開されることがあります。常に適切に制限された読み取り権限を持つパイプまたはファイルを使用してください。

おすすめ記事