Ubuntu的文件系统加密,是一项既能防范外部入侵又能保护隐私的实用技术。无论是为整个磁盘提供保险柜级别的防护,还是仅对某个敏感目录单独上锁,都有成熟的工具链可供使用。下面梳理两种最常见的加密方案,每一步均来自实际踩坑经验,帮助您快速上手。
使用LUKS加密整个磁盘分区
LUKS是Linux生态下最主流的分区级加密方案,适用于保护整个数据盘或系统盘的特定分区。操作分为几个关键步骤:
- 备份数据:加密前务必做好备份,因为加密过程会清空分区原有数据。万一操作失误,至少还有恢复的余地。
- 安装工具:先更新软件源,然后安装cryptsetup包。终端执行两条命令:
sudo apt update和sudo apt install cryptsetup。 - 加密分区:运行
sudo cryptsetup luksFormat /dev/sdX对目标分区初始化加密。注意将/dev/sdX替换为实际的分区路径(例如/dev/sdb1)。系统会提示确认并设置密码,密码强度至关重要。 - 打开加密卷:加密后的分区不能直接挂载,需要先解锁。执行
sudo cryptsetup luksOpen /dev/sdX my_encrypted_volume,为该加密卷设定一个名称(例如my_encrypted_volume),然后输入刚才设置的密码。 - 格式化并挂载:解锁后,加密卷会出现在
/dev/mapper/下(例如/dev/mapper/my_encrypted_volume)。格式化它:sudo mkfs.ext4 /dev/mapper/my_encrypted_volume。然后挂载到某个目录:sudo mount /dev/mapper/my_encrypted_volume /mnt。现在即可正常读写数据。 - 自动挂载(可选):希望系统开机自动解锁并挂载?需要编辑两个文件:
/etc/crypttab和/etc/fstab,添加对应的条目。密码管理需谨慎,通常配合密钥文件或利用LUKS的多个密码槽实现自动化。此步骤对新手略显复杂,建议先在虚拟机中演练一遍。
使用eCryptfs加密特定文件或目录
如果不想动整个分区,只需对某个文件夹加密(例如存放私密文档的目录),eCryptfs是更轻量的选择。它基于堆叠式文件系统,加密对应用程序透明——文件写入时自动加密,读取时自动解密。
- 安装工具:同样先更新,再安装:
sudo apt update+sudo apt install ecryptfs-utils。 - 创建加密目录:创建一个空文件夹,例如
mkdir ~/encrypted_folder。 - 挂载加密目录:执行
mount -t ecryptfs ~/encrypted_folder ~/encrypted_folder将其自身挂载到自身之上。系统会进入交互式配置界面,询问加密算法、密钥生成方式等。通常直接选择默认选项即可,务必记下生成的挂载签名(后续重新挂载时用于验证)。 - 使用加密目录:挂载成功后,往此目录里写入任何文件都会自动加密,读取时自动解密。您可以像操作普通文件夹一样使用它。
- 卸载加密目录:用完记得卸载:
umount ~/encrypted_folder。卸载后目录里的文件以密文形式存储,再次挂载时输入相同的密码和签名才能恢复明文。
两种方式各有适用场景:LUKS适合整个磁盘或分区级别的强加密,性能开销较小,但灵活度较低;eCryptfs适合对特定目录加密,灵活度更高,但每次挂载时需要交互。根据实际需求选择即可。加密并非万无一失,但多一层防护总比没有强。
