近年情報の流出が問題になっており、厳重な情報管理が重要になってきています。ラップトップPCを何処かに置き忘れた場合、通常ログインパスワードがかかっているので容易にはデータは見られません。しかしUSBメモリーはどうでしょうか?紛失したら拾った人のPCに刺されてすぐに参照されてしまいます。gocryptfsは、特定のディレクトリにパスワードをかけてくれるツールです。USBを紛失してもラップトップPC同様パスワードが分からなければデータを参照できないので、導入しておけば一定の抑止力を得ることができます。gocryptfs のインストールは以下のコマンドで行います。
$ sudo apt install gocryptfs
PCにUSBを刺してマウントされた場所に移動します。
$ cd /media/$USER/USB名/
暗号化データを保存するための任意のディレクトリ(ここではマニュアル上と同じ名前 CIPHERDIR とします。)と暗号化してデータを保存する任意の作業ディレクトリ(WORK)を作成します。
$ mkdir CIPHERDIR
$ mkdir WORK
CIPHERDIR ディレクトリを初期化します。実行すると解除する為のパスワードを求められるので設定します。
$ gocryptfs -init CIPHERDIR
Choose a password for protecting your files.
Password:
Repeat:
:
The gocryptfs filesystem has been created successfully.
You can now mount it using: gocryptfs CIPHERDIR MOUNTPOINT
成功すると設定ファイルが生成されます。
$ ls CIPHERDIR/
gocryptfs.conf gocryptfs.diriv
作業ディレクトリを以下のようにマウントします。パスワードを求められるので、先程設定したパスワードを入力します。
$ sudo gocryptfs ./CIPHERDIR/ ./WORK/
Password:
Decrypting master key
Filesystem mounted and ready.
保存したいデータを作業用ディレクトリにコピーして、ファイルがコピーされた事を確認します。
$ sudo mv test.txt ./WORK/
$ sudo ls ./WORK/
test.txt
作業完了後、作業用ディレクトリをアンマウントして作業用ディレクトリの中身を確認すると空である事が分かります。再度マウントすると保存したファイルが確認できます。
$ sudo fusermount -u ./WORK/
$ sudo ls ./WORK/
$ sudo gocryptfs ./CIPHERDIR/ ./WORK/
$ sudo ls ./WORK/
test.txt
※なおgocryptfsはUSB以外、ホームディレクトリのディレクトリ暗号化することができます。その際は sudo コマンドは必要ありません。