Linux磁盘加密

很多时候数据要比物理硬件重要的多,所以如果我们的硬盘或者电脑(笔记本)丢了的话,那么数据也可能要被别人盗取。linux磁盘加密 rhce RHCE6

为了数据的安全,我们可以对磁盘来进行加密。Windows里可以用Bitlocker来实现,那么在linux里可以用cryptsetup来实现。

原理:

正常情况下我们要使用一个分区,必须要先把它挂载到某一个目录里才能使用,但如果我们使用cryptsetup对分区进行了加密后,这个分区就不再允许直接挂载。如果要使用这个分区,必须对这个分区做一个映射,映射到/dev/mapper这个目录里去,我们只能挂载这个映射才能使用。然而做映射的时候是需要输入解密密码的。

下面就开始来做具体的实验:

我系统中的分区如下图

Linux磁盘加密

正常的话,我们可以直接挂载/dev/sda3使用:

Linux磁盘加密

下面开始进行加密/dev/sda3,如下图

Linux磁盘加密

出现警告,回损害/dev/sda3里面的数据,我们敲入大写的YES(记住是大写),然后输入两遍加密密码。

现在这个分区已经不能再直接挂载:

Linux磁盘加密

如果要使用,必须要先做一个映射,映射到/dev/mapper下,步骤如下:

Linux磁盘加密

做映射的时候必须要输入解密密码,如果密码错误将映射不成功,上图,我输入两边错误的密码,第三遍为正确密码。

 

此时在/dev/mapper下面就有了一个文件/dev/mapper/rhce

Linux磁盘加密

/dev/mapper/rhce是我们刚刚做出来的映射,它是/dev/dm-0的一个软连接,然后格式化:

Mkfs.ext4 /dev/mapper/rhce  (或者 mkfs.ext4 /dev/dm-0)

 

我们现在可以直接挂载 /dev/mapper/rhce 或者 /dev/dm-0

Linux磁盘加密

我们可以查看一下映射的状态:

Linux磁盘加密

当然这个时候把我们的硬盘拿到其他电脑上使用,如果没有密码的话是没法使用的,除非格式化(但数据也会丢失),但如果得到的是我们的电脑,我们已经做好了映射,那么他们就可以直接使用了,也没有安全性可言。所以当我们使用完这块分区的话,我们可以把映射删除掉,下次使用的时候再做映射。射出映射的命令如下:

Linux磁盘加密

Linux磁盘加密

当然我们也没有必要删除它,也可以直接把这个映射暂停掉:

Linux磁盘加密

如果要恢复的话,可以使用一下命令:

Linux磁盘加密

 

如果希望这个映射能在开机的时候自动挂载,那么要写入/etc/fstab里面去:

Linux磁盘加密

Linux磁盘加密

但这个时候系统在启动的时候,会等待你输入密码:

Linux磁盘加密

(这个是之前截的图,用的是/dev/sdb1做的实验)

我们必须要输入密码,系统才会继续启动。

如果希望系统启动的时候我们不需要输入密码的话,我们可以先把密码写到一个文本文件里去,系统再启动的时候自动读取这个文件即可:

Linux磁盘加密

编辑/etc/crypttab: vim /etc/crypttab 写入:

Linux磁盘加密

第一列为映射名,第二列是分区名, 第三列是密码文件。

写完保存并退出,系统再启动的时候就不需要输入密码,而是直接读取配置文件里的密码。

 

以上步骤也可以用其他命令替代: 

Cryptsetup create = cryptsetup luksFormat + cryptsetup luksOpen

Cryptsetup luksClose = cryptsetup remove

Linux磁盘加密

更多的用法,大家可以查看manpage : man cryptsetup

 

 

相关新闻

发表回复

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据

                                                                                                                                    RHCE9学习指南连载,点击阅读