在 Linux 上创建一个加密文件保险库
创始人
2024-03-02 07:12:41
0

使用 Linux 统一密钥设置(LUKS)为物理驱动器或云存储上的敏感文件创建一个加密保险库。

最近,我演示了如何在 Linux 上使用 统一密钥设置 Linux Unified Key Setup (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

本文由 LCTT 原创编译,Linux中国 荣誉推出

相关内容

国金证券:海外加密矿场正在...
国金证券研报称,加密矿场公司由于具备低廉的电价、大量已获批的电力额...
2025-10-24 08:51:45
全线跳水!近13万人爆仓
来源:e公司 9月14日晚间,一度飘红的比特币等加密货币突然跳水下...
2025-09-15 15:15:01
给AI玩具设一道隐私“防火...
江德斌 据6月9日央视网报道,从能讲故事的智能玩偶,到可情感交互的...
2025-06-13 07:14:10
某租房平台AES加密解密
本次逆向站点aHR0cHM6Ly93d3cubWFvbWFvenU...
2025-06-01 00:48:12
CentOS上安装或更新O...
CentOS与OpenSSL 1.0:关键技术与安全实践探讨 在服...
2025-03-14 07:40:24
“黑箱”,AI开始自言自语...
文丨陆弃 近日,一段由人工智能(AI)进行的对话视频在网络上引发了...
2025-02-26 15:49:28

热门资讯

如何在 Github 上创建一... 学习如何复刻一个仓库,进行更改,并要求维护人员审查并合并它。你知道如何使用 git 了,你有一个 G...
《Apex 英雄》正式可在 S... 《Apex 英雄》现已通过 Steam Deck 验证,这使其成为支持 Linux 的顶级多人游戏之...
Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
JStock:Linux 上不... 如果你在股票市场做投资,那么你可能非常清楚投资组合管理计划有多重要。管理投资组合的目标是依据你能承受...
Textual:为 Pytho... 快速入门使用 TextualPython 在 Linux 上有像 TkInter 这样的优秀 GUI...
硬核观察 #1245 Open... #1 OpenAI 悄然删除禁止将 ChatGPT 用于 “军事和战争” 的禁令在 1 月 10 日...
使用时间序列数据,用开源工具助... InfluxData 是一个开源的时间序列数据库平台。下面介绍了它是如何被用于边缘应用案例的。收集到...
使用 KRAWL 扫描 Kub... 用 KRAWL 脚本来识别 Kubernetes Pod 和容器中的错误。当你使用 Kubernet...
硬核观察 #1249 LG 洗... #1 LG 洗衣机每天上传近 4GB 的数据?一个名为 Johnie 的 LG 洗衣机用户发现,他的...
2024 年 Linux 和开... 让我们尝试预测未来吧!新的一年快乐,朋友们 ✨2024 年的钟声已经敲过,我们有必要去预见一下将塑造...