如何在Linux中使用luks加密文件系统
Linux Unified键设置(luks)是一个磁盘加密规范,可以帮助保护它配置的设备上的数据。
现在,主要开始在给员工提供的工作站/笔记本电脑上,以便加密机密数据。
luks使用提供另外的安全性的密码来保护文件系统。
以下示例将创建逻辑卷,加密分区,使用ext4文件系统的格式并将其安装在Rhel 6上。
我们还可以使用LUK来保护分区而不是LVM。
配置LUKS的分区或者逻辑卷时,请使用密码进行准备并记住它。
加载内核模块
第一步是加载DM_CRYPT和DM_MOD模块。
一种方法是使用modprobe dm_crypt命令。
如果成功,我们应该在输出到'lsmod |中查看以下模块grep dm_命令':
# modprobe dm_crypt # lsmod | grep dm_ dm_crypt 13022 0 dm_mod 81500 3 dm_crypt,dm_mirror,dm_log
让我们创建一个逻辑卷并使用luks加密它
1.创建逻辑卷
首先,我们需要创建要加密的设备。
这可以是LVM逻辑卷或者分区。
注意:请创建新分区,因为在现有文件系统上创建LUKS卷将删除该文件系统上的所有内容。
以下示例将在现有卷组中创建另一个逻辑卷。
确保VG可调整大小,并且具有足够的空间来创建一个。
# vgs --> To see the free space VG #PV #LV #SN Attr VSize VFree vg_server 1 1 0 wz--n- 4.39g 990.00m # lvcreate -L 500M -n lv_luks vg_server Logical volume "lv_luks" created
2.加密逻辑卷
创建设备后,我们需要将其格式为加密设备。
为此,请使用"cryptsetup luksformat/dev/yourdevice"命令。
在执行此操作时,我们还会设置解密密码。
确保记住此密码,因为它是一旦加密访问设备的唯一方法!
# cryptsetup luksFormat /dev/mapper/vg_server-lv_luks WARNING! ======== This will overwrite data on /dev/mapper/vg_server-lv_luks irrevocably. Are you sure? (Type uppercase yes): YES Enter LUKS passphrase: Verify passphrase:
3.创建设备
我们需要在可以使用它之前打开此设备。
打开它时,我们将名称分配给加密设备。
此名称发生在"/dev/mapper"目录中,我们将创建Luis-dev1作为将出现在"/dev/mapper"中的设备,后来用于格式化和安装。
# cryptsetup luksOpen /dev/mapper/vg_server-lv_luks luks-dev1 Enter passphrase:
4.在加密分区上创建文件系统
现在使用"MKFS.ext4"等命令格式化了"MKFS.ext4"的命令,该命令应在"/dev/mapper"目录中使用。
# mkfs.ext4 /dev/mapper/luks-dev1 mke2fs 1.41.12 (17-May-2010) Filesystem label= OS type: Linux Block size=1024 (log=0) Fragment size=1024 (log=0) Stride=0 blocks, Stripe width=0 blocks 128016 inodes, 512000 blocks 25600 blocks (5.00%) reserved for the super user First data block=1 Maximum filesystem blocks=67633152 63 block groups 8192 blocks per group, 8192 fragments per group 2032 inodes per group Superblock backups stored on blocks: 8193, 24577, 40961, 57345, 73729, 204801, 221185, 401409 Writing inode tables: done Creating journal (8192) blocks): done Writing superblocks and filesystem accounting information This filesystem will be automatically checked every 30 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override.
5./etc/crypttab文件
如果我们现在重新启动,DM_CRYPT模块甚至不会加载。
要正确设置LUKS加密的文件系统,需要配置"/etc/crypttab"文件。
每个加密卷都使用以下格式获取该文件中的一行:
设备未格式化的卷Passphrase_file选项
该设备是在"/dev/mapper/luks-dev1"目录中之前创建的文件。
未格式化的卷可以是已经加密的分区或者LV。
将passphrase_file设置为none,Rhel 6将在启动时提示我们使用密码。
这提供了另外的安全性。
在设备盗窃的情况下,无法在不提供密码的情况下启动加密卷。
如果我们不想在启动时询问密码短语,则可以使用600个权限配置Passphrase_file
Edit /etc/crypttab and enter as below: luks-dev1 /dev/mapper/vg_server-lv_luks none
6.装入LUKS文件系统
将此LUKS在我们选择的目录中加密文件系统。
我已安装在/luks上
# mkdir /LUKS # mount -t ext4 /dev/mapper/luks-dev1 /LUKS
在/etc/fstab文件中添加此条目,以便在启动时可以安装它。
/dev/mapper/luks-dev1 /LUKS ext4 defaults 1 2
LUKS卷现已准备就绪。
我们可以在安装Linux并加密它时保护/文件系统。
这样,即使它被盗,可以加密整个硬盘并添加另外的保护层,因为Linux将在引导时询问密码。