在 Linux 上創建一個加密文件保險庫
最近,我演示了如何在 Linux 上使用 統一密鑰設置 (LUKS)和 cryptsetup
命令 實現全盤加密。雖然加密整個硬碟在很多情況下是有用的,但也有一些原因讓你不想對整個硬碟進行加密。例如,你可能需要讓一個硬碟在多個平台上工作,其中一些平台可能沒有集成 LUKS。此外,現在是 21 世紀,由於雲的存在,你可能不會使用物理硬碟來處理所有的數據。
幾年前,有一個名為 TrueCrypt 的系統,允許用戶創建加密的文件保險庫,可以通過 TrueCrypt 解密來提供讀/寫訪問。這是一項有用的技術,基本上提供了一個虛擬的攜帶型、完全加密的驅動器,你可以在那裡存儲重要數據。TrueCrypt 項目關閉了,但它可以作為一個有趣的模型。
幸運的是,LUKS 是一個靈活的系統,你可以使用它和 cryptsetup
在一個獨立的文件中創建一個加密保險庫,你可以將其保存在物理驅動器或雲存儲中。
下面就來介紹一下怎麼做。
1、建立一個空文件
首先,你必須創建一個預定大小的空文件。就像是一種保險庫或保險箱,你可以在其中存儲其他文件。你使用的命令是 util-linux
軟體包中的 fallocate
:
$ fallocate --length 512M vaultfile.img
這個例子創建了一個 512MB 的文件,但你可以把你的文件做成任何你想要的大小。
2、創建一個 LUKS 卷
接下來,在空文件中創建一個 LUKS 卷:
$ cryptsetup --verify-passphrase
luksFormat vaultfile.img
3、打開 LUKS 卷
要想創建一個可以存儲文件的文件系統,必須先打開 LUKS 卷,並將其掛載到電腦上:
$ sudo cryptsetup open
--type luks vaultfile.img myvault
$ ls /dev/mapper
myvault
4、建立一個文件系統
在你打開的保險庫中建立一個文件系統:
$ sudo mkfs.ext4 -L myvault /dev/mapper/myvault
如果你現在不需要它做什麼,你可以關閉它:
$ sudo cryptsetup close myvault
5、開始使用你的加密保險庫
現在一切都設置好了,你可以在任何需要存儲或訪問私人數據的時候使用你的加密文件庫。要訪問你的保險庫,必須將其掛載為一個可用的文件系統:
$ sudo cryptsetup open
--type luks vaultfile.img myvault
$ ls /dev/mapper
myvault
$ sudo mkdir /myvault
$ sudo mount /dev/mapper/myvault /myvault
這個例子用 cryptsetup
打開保險庫,然後把保險庫從 /dev/mapper
下掛載到一個叫 /myvault
的新目錄。和 Linux 上的任何卷一樣,你可以把 LUKS 卷掛載到任何你想掛載的地方,所以除了 /myvault
,你可以用 /mnt
或 ~/myvault
或任何你喜歡的位置。
當它被掛載後,你的 LUKS 卷就會被解密。你可以像讀取和寫入文件一樣讀取和寫入它,就像它是一個物理驅動器一樣。
當使用完你的加密保險庫時,請卸載並關閉它:
$ sudo umount /myvault
$ sudo cryptsetup close myvault
加密的文件保險庫
你用 LUKS 加密的鏡像文件和其他文件一樣,都是可移動的,因此你可以將你的保險庫存儲在硬碟、外置硬碟,甚至是互聯網上。只要你可以使用 LUKS,就可以解密、掛載和使用它來保證你的數據安全。輕鬆加密,提高數據安全性,不妨一試。
via: https://opensource.com/article/21/4/linux-encryption
作者:Seth Kenlon 選題:lujun9972 譯者:wxy 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive