LUKS でUSBメモリを暗号化

LINEで送る
Pocket

SB に重要なファイルを保存していると、USBを紛失した時に情報が漏洩してしまう可能性があります。PC のログインと同じように USB にもパスワードを掛けて、セキュアにUSBを利用してみませんか?


今回は、LUKS(Linux Unified Key Setup. ラックス)というディスク暗号化の方法を使った暗号化の方法を紹介したいと思います。

LUKS を利用するための cryptsetup パッケージを以下の方法でインストールします。

$ sudo apt install cryptsetup

手持ちの USB を Ubuntu に差し込むと自動でUSBがマウントされるので、デバイス名 (/dev/sdb1)を確認します。

$ df
Filesystem     1K-blocks    Used Available Use% Mounted on
                     :
/dev/sdb1       15152064 1266368  13885696   9% /media/taro/EC6F-D298

自動でマウントされない場合は、dmesg と fdisk コマンドを使用し調べます。

$ sudo dmesg
                     :
[72697.021940] scsi 3:0:0:0: Direct-Access     ELECOM   MF-HCBU2         1100 PQ: 0 ANSI: 4
[72697.032914] sd 3:0:0:0: Attached scsi generic sg2 type 0
[72697.043626] sd 3:0:0:0: [sdb] 30310400 512-byte logical blocks: (15.5 GB/14.5 GiB)   <- /dev/sdb だと分かる
                     :
$ sudo fdisk -l /dev/sdb
                     :
/dev/sdb1           2048 30310399 30308352  14.5G 83 Linux   <- /dev/sdb1 だと分かる。

USB をアンマウントします。

$ sudo umount /media/taro/EC6F-D298/

デバイスをフォーマットします。

$ sudo cryptsetup luksFormat /dev/sdb1

WARNING!
========
This will overwrite data on /dev/sdb1 irrevocably.

Are you sure? (Type uppercase yes): YES        <- 大文字で YES と入力します。
Enter passphrase for /dev/sdb1:                <- パスワードを設定します。
パスフレーズを確認:

暗号化したデバイスをオープンします。名前h(例 sec_usb) は任意の名前をつけます。

                           デバイス名 名前
$ sudo cryptsetup luksOpen /dev/sdb1 sec_usb

デバイスをフォーマットします。フォーマットするファイルシステムは何でも良いです。
今回は、ext4 でフォーマットします。

$ sudo mkfs.ext4 /dev/mapper/sec_usb            <- /dev/mapper/ + 名前
mke2fs 1.45.5 (07-Jan-2020)
/dev/mapper/sec_usb contains a exfat file system
Proceed anyway? (y,N) y

マウントします。

$ sudo mount /dev/mapper/sec_usb /media/taro/

そのままでは、root しか書き込み権限が無いので、ディレクトリのオーナを変更します。
これでファイルの書き込みが行えるようになります。

$ sudo chown $USER:$USER /media/taro

使用後は、umount して luksClose します。

$ sudo umount  /media/taro
$ sudo cryptsetup luksClose sec_usb

2回目以降は、luksOpen して mount すれば使えます。luksOpen 時に、先程設定したパスワードを問われます。

$ sudo cryptsetup luksOpen /dev/sdb1 sec_usb
$ sudo mount /dev/mapper/sec_usb /media/taro/
$ sudo umount  /media/taro
$ sudo cryptsetup luksClose sec_usb
LINEで送る
Pocket

  • このエントリーをはてなブックマークに追加

コメントを残す

*

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください