Linux分区如何加密
Linux分区加密常用 LUKS(Linux Unified Key Setup) 标准,通过 cryptsetup
工具实现,步骤如下:
1. 安装工具
确保系统安装 cryptsetup
(多数发行版默认安装):
# Debian/Ubuntu
sudo apt update && sudo apt install cryptsetup
# CentOS/RHEL
sudo yum install cryptsetup
2. 准备分区
用 fdisk
或 parted
创建新分区(如 /dev/sdb1
),注意:加密会清除分区数据:
sudo fdisk /dev/sdb
# 操作:n(新建分区)→ p(主分区)→ w(保存)
sudo partx -a /dev/sdb # 重新加载分区表
3. 加密分区
使用 cryptsetup luksFormat
加密分区(需输入强密码):
sudo cryptsetup -v -y --cipher aes-xts-plain64 --key-size 512 luksFormat /dev/sdb1
# 参数说明:
# - aes-xts-plain64:推荐加密算法(高强度)
# - --key-size 512:密钥长度(可选256/512)
4. 打开加密分区
通过 luksOpen
映射为虚拟设备(如 /dev/mapper/secure_partition
):
sudo cryptsetup luksOpen /dev/sdb1 secure_partition
# 输入密码后,分区会映射到 /dev/mapper/secure_partition
5. 格式化与挂载
格式化虚拟设备为文件系统(如 ext4),并挂载到指定目录:
sudo mkfs.ext4 /dev/mapper/secure_partition
sudo mkdir /mnt/secure
sudo mount /dev/mapper/secure_partition /mnt/secure
6. 开机自动挂载(可选)
编辑 /etc/crypttab
和 /etc/fstab
实现开机自动解密挂载:
- /etc/crypttab:添加
secure_partition /dev/sdb1 /root/key
(/root/key
为密码文件路径)。 - /etc/fstab:添加
UUID=$(blkid /dev/sdb1 | cut -d'"' -f2) /mnt/secure ext4 defaults,luks 0 0
。
7. 关闭加密分区
使用完毕后,卸载并关闭加密分区:
sudo umount /mnt/secure
sudo cryptsetup luksClose secure_partition
关键注意事项
- 密码安全:务必使用强密码,丢失后无法恢复数据。
- 备份密钥:可通过
cryptsetup luksHeaderBackup
备份分区头信息,防止硬件故障导致数据丢失。 - 性能影响:加密会轻微降低磁盘读写速度,建议选择适合硬件的算法(如 AES-XTS)。
以上步骤参考自 。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权请联系我们,一经查实立即删除!