Ubuntu数据加密实用指南
一、场景与方案总览
| 场景 | 推荐方案 | 工具 | 优点 | 注意点 |
|---|---|---|---|---|
| 新装系统全盘加密 | 安装时启用 LUKS 全磁盘加密 | cryptsetup | 启动即解密,系统分区与数据分区统一受保护 | 需设置强口令;若需远程解锁需配置 Dropbear/initramfs |
| 已有系统对数据盘/分区加密 | 对数据分区或外置盘做 LUKS 加密 | cryptsetup | 灵活、与系统解耦、可随时挂载 | 需提前备份;需配置开机解锁与自动挂载 |
| 文件/文件夹级加密 | GnuPG(对称/公钥)、OpenSSL(对称) | gnupg、openssl | 轻量、无需改动分区;适合传输与备份 | 需妥善管理口令/密钥;多人协作公钥更合适 |
| 容器/跨平台共享 | VeraCrypt 容器或分区 | veracrypt | 跨平台、图形界面、支持隐藏卷 | 桌面环境更友好;服务器上需命令行 |
| 主目录/目录级加密 | eCryptfs(历史方案)或 fscrypt | ecryptfs-utils、fscrypt | 目录级细粒度控制 | eCryptfs 在新版本已弱化;fscrypt 需文件系统支持(如 ext4) |
二、LUKS磁盘或分区加密步骤
sudo apt update && sudo apt install cryptsetupsudo cryptsetup luksFormat /dev/sdX1(输入并确认强口令)sudo cryptsetup luksOpen /dev/sdX1 mydatasudo mkfs.ext4 /dev/mapper/mydatasudo mkdir -p /mnt/encrypted && sudo mount /dev/mapper/mydata /mnt/encryptedblkid /dev/sdX1/etc/crypttab 添加:mydata UUID=<你的UUID> none luks/etc/fstab 添加:/dev/mapper/mydata /mnt/encrypted ext4 defaults 0 2mount | grep mydata 或 ls /mnt/encrypted三、文件与文件夹级加密
sudo apt install gnupggpg --full-generate-keygpg -e -r "对方邮箱" 文件名(生成 .gpg)gpg -d 文件名.gpg > 文件名 或 gpg 文件名.gpgopenssl enc -aes-256-cbc -salt -in 明文 -out 密文openssl enc -d -aes-256-cbc -in 密文 -out 明文四、容器与目录级加密
veracrypt --create /path/container.vcveracrypt /path/container.vc /mnt/vcveracrypt -d /mnt/vcsudo apt install ecryptfs-utilsecryptfs-setup-private五、安全与运维要点
cryptsetup luksHeaderBackup)