在 Linux 上創建一個加密文件保險庫
使用 Linux 統一密鑰設置(LUKS)為物理驅動器或云存儲上的敏感文件創建一個加密保險庫。
最近,我演示了如何在 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,就可以解密、掛載和使用它來保證你的數據安全。輕松加密,提高數據安全性,不妨一試。