最新版本的 Ubuntu 强制加密整个磁盘,而不仅仅是一个分区,这意味着双系统用户无法完全加密他们的 Ubuntu 机器,因此加密你的Home 文件夹是最佳选择。
对于不熟悉磁盘加密的人来说,这是一种通过加密来保护 Ubuntu 文件的方法。这个过程是无缝的;在登录时不需要额外输入密码,一旦你成功登录,你的磁盘就会自动解密。
它最大的优势是,当有人尝试通过双系统引导或直接访问硬盘来访问你的计算机数据时,他们将无法阅读你加密磁盘的内容(在我们的案例中,你的Home 文件夹),除非你提供登录密码或加密密码。
Ubuntu 提供了最简单、最方便的方法来加密你的Home 文件夹,在这篇文章中,我将向你展示如何在 Ubuntu 24.04、23.04 或 22.04 中加密你的Home 文件夹。
步骤 1:安装必要的工具
要在 Ubuntu 中加密你的Home 文件夹,你需要安装一些必要的软件包,比如 eCryptfs
。为此,你可以打开你的终端并执行以下命令:
$ sudo apt install ecryptfs-utils cryptsetup
输出:
步骤 2:创建临时管理员账户
要加密你当前用户的Home 文件夹,你需要切换到另一个或临时的管理员账户,以防在加密过程中出现任何中断。
为此,只需进入 “设置” -> “用户” -> 点击 “解锁” 按钮 -> 点击 “添加用户” -> 输入必要的信息,如用户名和密码,确保选择管理员,然后点击 “添加” 来创建一个账户。
📝 注意
选项的位置可能因你的 Ubuntu 版本而异,但你可以通过简单地四处查看来轻松找到它。
或者,你也可以使用你的 GNOME 终端来通过执行以下命令创建一个 “temp_user” 账户:
$ sudo adduser temp_user
使用上述命令创建用户账户后,确保通过以下命令将用户添加到 “sudo” 组中:
$ sudo usermod -aG sudo temp_user
步骤 3:加密 Home 文件夹
现在你已经创建了一个临时管理员账户,你可以注销当前用户账户并使用新的管理员账户登录。然后,打开你的终端并执行以下命令来开始加密你的Home 文件夹。
📝 注意
确保将 <username>
替换为你要加密Home 文件夹的用户名。
$ sudo ecryptfs-migrate-home -u <username>
在过程中,该命令首先会提示输入 “sudo” 密码,输入你为临时管理员账户选择的密码,然后会要求输入你想要加密Home 文件夹的用户账户的密码,输入后,加密过程将开始。
一旦过程完成,你将收到以下输出以及一些重要的参考注释。我将简要解释其中大部分,但请记住,如果出现任何问题,你可以恢复在加密过程中创建的备份文件 /home/username.xxxxx
。
步骤 4:重新登录到加密用户账户
一旦Home 文件夹被加密,注销并重新登录到你的原始用户账户。等待几秒钟直到出现以下提示,然后点击 “现在运行此操作” 按钮。输入用户登录密码以生成用于恢复目的的随机密码,然后将其安全存储。
或者,你也可以执行以下命令来记录你随机生成的密码:
$ ecryptfs-unwrap-passphrase
输出:
步骤 5:加密交换区
如果你熟悉 Linux 交换空间,你可能知道你的交换区也包含需要加密的敏感数据。为了解决这个问题,你可以执行以下命令来首先验证你是否有任何交换区。
$ swapon -s
输出:
如果你没有交换分区,则跳过;否则,继续执行以下命令来加密交换:
📝 注意
加
密交换分区可能会妨碍休眠和挂起功能。
$ sudo ecryptfs-setup-swap
在加密过程中,它可能会要求你按 Y
键确认。
一旦过程完成,你将收到以下输出:
最后一行显示的 [swapon: cannot open /dev/mapper/cryptswap1: No such file or directory
](swapon: cannot open /dev/mapper/cryptswap1: No such file or directory) 表示过程中出现了问题,但这只是一个标准消息,不用担心。你可以通过重新启动并运行 swapon -s
命令来确认加密的交换区。
步骤 6:清理
一切都完成后,你可以通过进入 “设置” -> “用户” -> “解锁” -> 选择 “temp_user” 账户并选择 “删除用户…” 按钮来删除临时用户账户。
或者,你也可以使用以下命令来删除 temp_user
账户:
$ sudo userdel --remove temp_user
在Home 文件夹加密过程中,还创建了一个Home 文件夹备份,你可以立即或数天后通过执行以下命令来删除:
$ ls /home/
$ sudo rm -rf /home/username.xxxxx
输出:
就这样!你已成功加密了你的Home 文件夹。你不会注意到任何视觉上的变化,因为这个过程是无缝的。当你使用你的用户账户登录时,Home 文件夹将会自动解密。即使有人试图通过可引导的 USB 或直接通过硬盘访问它,他们也无法读取其内容。