web-dev-qa-db-ja.com

コマンドラインから暗号化されたドライブをロックする方法はありますか?

機密ファイルを保存する暗号化ドライブを作成しました。暗号化されたドライブをアンマウントしてロックするコマンドラインツールがあるかどうか疑問に思っています。ある場合は、ドックに移動するためのランチャーを作成し、クリックしてコマンドラインを開かなくてもコマンドが実行されるようにしました。

コマンドSudo apt-get install cryptsetupを使用し、アプリケーションDisksにアクセスして、フォーマットしたいディスクを選択し、Encrypted, compatible with Linux system (LUKS, ext4).を選択しました

geditというファイルをlockという名前で作成し、/binにコピーしたので、単一のコマンドとして実行できます。ファイルには次のものがあります。

#!/bin/bash
Sudo umount /mnt/luks-79a537ae-8eed-42a3-be85-7c54b920d4a2
Sudo cryptsetup luksClose /dev/mapper/luks-79a537ae-8eed-42a3-be85-7c54b920d4a2

Sudo visudoを実行し、次の行をファイルに追加しました。

amolith ALL=(ALL) NOPASSWD: /usr/bin/apt-get, /sbin/cryptsetup, /bin/umount, /bin/lock

保存して終了し、lockを実行すると、コマンドにルートパスワードが不要になったとしても(AFAIK)、パスワードの入力を求められます。

2
Amolith

はい、LUKSを使用しています。パーティションの名前(マウントされている場所)と暗号名を知る必要があります。名前は/dev/mapperにあります

マウント(復号化)するには

cryptsetup luksOpen /dev/sdxy name_of_crypt
mount /dev/mapper/name_of_crypt /mount_point

アンマウント(暗号化)するには

umount /mount_point
cryptsetup luksClose name_of_crypt

これらのコマンドをルート、つまりSudoとして実行する必要がある場合があるため、パスワードなしでcryptsetupを実行するようにSudoを構成することをお勧めします。

注:暗号化されたデータのマウント/アンマウントのスクリプティングは、そもそも暗号化の目的を無効にします。そのままにしておきます;)

dm-crypt/luksボリュームを含むマウントコマンドをスクリプト化する方法 を参照してください。 expectを使用して自動化することもできます

https://www.lifewire.com/linus-unix-command-expect-2201096

3
Panther