Linux LUKS加密硬盘分区
LUKS (Linux Unified Key Setup)是 Linux 硬盘加密的标准。 通过提供标准的磁盘格式,它不仅可以促进发行版之间的兼容性,还可以提供对多个用户密码的安全管理。 与现有解决方案相比,LUKS 将所有必要的设置信息存储在分区信息首部中,使用户能够无缝传输或迁移其数据。
环境:
OS: CentOS Linux release 7.9.2009
kernel:3.10.0-1160.11.1.el7.x86_64
tool:cryptsetup
cryptsetup是基于分区的加密,大部分的发行版本已经内置了相关的软件包。
本例的加密测试是两块70G的硬盘使用LVM管理,创建了一个LV为iclound,使用cryptsetup对其加密操作。
操作步骤:
基于口令:
(1)创建加密
[root@CentOS ~]# cryptsetup luksFormat /dev/data/iclound
WARNING!
========
这将覆盖 /dev/data/iclound 上的数据,该动作不可取消。
Are you sure? (Type uppercase yes): YES
备注:YES一定要大写
输入 /dev/data/iclound 的口令:
确认密码:

(2)创建挂载目录
[root@CentOS ~]# mkdir /data
(3)创建分区映射
[root@CentOS ~]# cryptsetup luksOpen /dev/data/iclound data
输入 /dev/data/iclound 的口令

(4)格式化分区、挂载
[root@CentOS ~]# mkfs.ext4 /dev/mapper/data

[root@CentOS ~]# mount /dev/mapper/data /data
[root@CentOS data]# blkid /dev/mapper/data

[root@CentOS data]# vim /etc/fstab
增加
UUID="f24a662d-2449-484e-91b2-4dfecfaff098" /data ext4 defaults 0 0

(5)设置开机挂载加密分区
[root@CentOS ~]# mkdir -pv /iclound/passwd
[root@CentOS ~]# touch /iclound/passwd/cryptpasswd
[root@CentOS ~]# cryptsetup luksAddKey /dev/data/iclound /iclound/passwd/cryptpasswd

[root@CentOS ~]# vim /etc/crypttab
增加
data /dev/data/iclound /iclound/passwd/cryptpasswd

基于密钥:
(1)生成随机密钥文件
[root@CentOS ~]# dd if=/dev/random of=/root/encrypt.key bs=1 count=8192

(2)创建加密分区
[root@CentOS ~]# cryptsetup -s 512 luksFormat /dev/data/iclound
(3)添加密钥文件
[root@CentOS ~]# cryptsetup luksAddkey /dev/data/iclound /root/encrypt.key

(4)格式化文件系统
[root@CentOS ~]# mkfs.ext4 /dev/mapper/data-iclound

(5)设置开机挂载
/dev/mapper/data-iclound /iclound ext4 defaults 0 0
(6)设置加密自动挂载
[root@CentOS ~]# vim /etc/crypttab
iclound /dev/data/iclound /root/encrypt.key
posted on 2021-01-04 17:29 CyberSecurityBook 阅读(907) 评论(0) 收藏 举报
浙公网安备 33010602011771号