Comment fournir de manière non interactive une phrase secrète à 'dmcrypt luksFormat'?

9

J'écris un script qui configure automatiquement les machines virtuelles de l' environnement de test . Ce script devrait automatiquement formater une partition dmcrypt + LUKS pour moi, avec une certaine phrase secrète. Comme il s'agit d'un environnement de test local, je ne me soucie pas de la sécurité de la phrase secrète, je veux juste que l'ensemble du processus de configuration de la machine virtuelle soit automatisé et non interactif.

Comment puis-je fournir de manière non interactive une phrase secrète à «dmcrypt luksFormat»? Je veux utiliser des phrases secrètes, pas des clés, car dans la production, nous utilisons également des phrases secrètes pour LUKS.

Hongli Lai
la source

Réponses:

17

La première chose à faire est d'appeler la bonne commande: ce n'est cryptsetuppas le cas dmcrypt.

cryptsetup luksFormat /dev/vda2

La deuxième chose est que vous pouvez passer un autre argument pour lire la phrase secrète d'un fichier ou d'une entrée standard (en utilisant -).

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

Notez que l' -nindicateur est nécessaire echopour empêcher l'ajout d'un saut de ligne au mot de passe.

Consultez la cryptsetuppage de manuel pour d'autres façons de transmettre le matériel clé.

Michael Hampton
la source
3
J'ai eu du mal à déverrouiller mon volume après l'avoir créé de cette façon. Le personnage de la nouvelle ligne me faisait trébucher. printf "This isn't a very secure passphrase." | cryptsetup luksFormat /dev/vda2 -a mieux fonctionné pour moi. YMMV.
Kenny Rasschaert