1 磁盘加密的必要性
文件的加密比较容易破解,所以在需要较高的保密性的情况下,会对磁盘本身进行加密,磁盘加密后如果强行读取文件,在磁盘损坏的同时,其中的数据也会损坏
2 luks加密
LUKS (Linux Unified Key Setup)是 Linux 硬盘加密的标准。 通过提供标准的磁盘格式,它不仅可以促进发行版之间的兼容性,还可以提供对多个用户密码的安全管理
3 加密方式
使用cryptsetup对某个分区进行了加密后,这个分区就不再允许直接挂载,必须首先对加密的卷进行解密才能挂载。如果要使用这个分区,必须对这个分区做一个映射,映射到/dev/mapper这个目录里去,我们只能挂载这个映射才能使用。然而做映射的时候是需要输入解密密码的。
4加密
1.用fdisk /dev/vdb创建一个分区
2.对设备/dev/vdb7进行加密,并且设置密码,输入两次
注意需要大写的YES
可以在/dev/mapper/下,查看虚拟设备的生成
格式化解密后的虚拟设备,创建一个test1
挂载mapper下的设备,挂载成功
close后相当于关闭盖子,这个虚拟设备就到此为止了、
再次挂载vdb7,会显示挂在失败,因为此时的vdb7是加密设备
注解:磁盘加密,就像把设备放在一个有盖子的容器中,命令cryptsetup open /dev/vdb1 westos 就是打开盖子,将设备拿出来,进行操作后,再用命令cryptsetup close westos 将设备放回容器中并盖上盖子。这样,可以提高安全性能
5 解密
1打开盖子 cryptsetup open /dev/vdb1 linux ##此时的名字是任意指定的,上次是cry,此次是linux,任意名字均可
2输入密码后挂载 mount /dev/mapper/linux /mnt/
6永久挂载
永久挂载需要编写相关配置文件
1 编辑/dev/crypttab文件,让系统在启动时对加密的/dev/vdb1解密
cry为解密后的虚拟设备,/dev/vdb5为解密设备,/root/vdb5passwd为记录/dev/vdb5解密密码的文件。该内容表示将/dev/vdb5解密为cry这个虚拟设备,密码记录在/root/vdb5passwd这个文件中
2 创建/root/vdb5passwd,将vdb5的解密密码写入,为了安全起见可以给该文件设定只有文件所有人才能查看和更改的权限
3 将/root/vdb5passwd文件设定为/dev/vdb5的解密文件
cryptsetup luksAddKey /dev/vdb1 /root/vdb5passwd
4 编辑开机自动挂载策略文件
7删除加密设备
删除加密设备的顺序和加密设备的顺序相反。
首先要将/etc/fstab和/etc/crypttab 两个文件恢复,删除密码文件/root/vdb5passwd,然后卸载虚拟设备,解密设备,再强制格式化/dev/vdb5为xfs文件系统
变成非加密的磁盘后就可以直接挂载了