何以接受DM-Crypt加密Linux文件系统?

何以接受DM-Crypt加密Linux文件系统?

一时,他们建议的 Zonefs 文件系统仅蕴涵大概 1500 行新代码。

怎样选择DM-Crypt加密Linux文件系统?

澳门新萄京8522 1

读者平时询问大家的二个大面积难点是,怎样为 Linux
施行朝气蓬勃种文件系统加密方法。在深远研商这些话题在此以前,小编想要注解两点:

率先,很难在网络找到那上面丰硕多的新闻。于是,小编会向我们介绍多少个好不便于找到的真的很棒的财富(实际上是几篇教程)。

其次,精通这一个标题标技巧细节相当的重大。那也是自己在本文中所要追查的,之后小编会介绍怎样促成加密,然后介绍任何财富。

人人平时说想要加密多少,然则他们常常忽略了一个平昔的方面:他们到底想对如何举办加密?他们是想从软件包里面对数码开展加密,然后将该数额存款和储蓄到硬驱上的单个文件中?比方说,他们是想让
LibreOffice 制造整个 .odt
文字管理文书档案,对它实行加密,然后将加密的结果作为单个文件写入到文件系统,就如下图那样?依然说他们想让
Linux 在文件系统层面自行管理加密?

澳门新萄京8522 2

生龙活虎种格局便是从软件包里面加密数据,然后将该数量存款和储蓄到硬驱上的单个文件中。恐怕Linux 会在文件系统层面自行管理加密。

以 Linux 管理加密事务为例, LibreOffice
除了读取和写入文件外,什么也不做,就如它最近所做的那样。 Linux
会加密文件,然后将文件实际写入到磁盘上,解密后回过头来读取文件。那是自个儿在此间运用的章程,可是你还要提议其余许多难点。想要建议合适的主题材料,你将在明白块存储的做事原理。无妨先看一下块存款和储蓄。

Linux块设备加密之dm-crypt解析 

教您什么行使dm-crypt给Ubuntu系统文件加密

块级存款和储蓄

操作系统处理地点驱动器时,操作系统使用 filesystem
软件来格式化驱动器,然后读取并写入单个扇区。保存文件时, filesystem 软件弄明白需求写入的扇区。读取文件时,
filesystem
会弄通晓数据在怎么扇区上,然后读取那七个扇区,为你重构文件。想管理文件,
filesystem
使用差别类型的目录,它将那几个索引也蕴藏在磁盘上。不一样的 filesystem
软件应用分歧的不二秘籍来集团数据,还包蕴分裂的安全部制;最后结果正是有了分歧的文件系统,举个例子ext4 和 NTFS 。

底层细节

大家已交待清楚了块级设备的工作原因,无妨思虑那么些:操作系统使用其 filesystem 软件,将数据扇区写入到驱动器。 filesystem
软件鲜明将数据扇区写入到哪个地方、怎么样组织它们,包含创制描述文件名称、组织措施等音信的元数据。但是filesystem
软件为了实施实际读取并写入到驱动器的操作,就须求有器材驱动程序来抓实际调控器械本人的行事,如下图的左边所示(驱动程序在
/dev 目录里面包车型地铁文件系统档案的次序布局中原来就有代表)。

澳门新萄京8522 3

filesystem
软件能够在写入数据此前行行加密。恐怕,坐落于 filesystem
软件与设备驱动程序之间的有些软件能张开加密。

就在 filesystem
软件与道具驱动程序之间的这么些点,加密地方须求做出选取:你是想让 filesystem
软件进行加密,然后写入数据吧?依旧说,大家其实将八个软件放置到 filesystem 软件与设施驱动程序之间怎么?那样一来,
filesystem
会像常常那样运转,可是当它计划访谈设备时,其调用改而由加密软件来管理,如上海教室的左边所示。大家在本文中要使用这种措施。可是先无妨批评别的几个难点。

顺便说一下,假诺您想看看设备驱动程序在 Linux
系统的 /dev 目录中哪些存在,可以参谋本文:

。它包涵编程方面,可是黄金时代旦你不是编制程序员,就点击到第 2 页,向下滚动鼠标,找到标为 Hello, World! Using /dev/hello_world
的章节,阅读第风流洒脱段,下边作了具体周详的讲解。)

假使您想加密整个分区,能够虚构加密整个驱动器。然而这里存在多少个没不符合规律。假如Computer从该驱动器运行,驱动器就要求一个小小的的分区
特意用来存放运行代码。该运维代码是机器代码,Computer读入后实践,才干运维计算机。假诺一切硬驱经过了加密,包括那部分数码,计算机就供给某种方式来解读
数据。可是计算机还尚无装入文件系统,所以它无法读取解密它的主次。见到难点之所在了吗?解密代码要求在
BIOS
自身里面。不过抢先1/2Computer未有这种代码。而那意味着运营记录其实不可能被加密。可是大家已经探究了消除这一个题指标各种措施(参阅:

),比如把运行代码放在可活动 USB 驱动器上面。

长途驱动器

假令你的驱动器是长途驱动器,有两种办法能够访问数据;那对于你打探能够利用哪一种等级次序的加密很要紧。三种格局是:

• 块级存款和储蓄 就如使用本地驱动器那样,因此你的 filesystem
软件能够读取并一贯写入到长途磁盘上的扇区。

• 文件级存款和储蓄,你的操作系统将文件发送到远程服务器,远程服务器有和好的操作系统和 filesystem
软件;该远程服务器进而将文件写入到其磁盘上。

借使是文件级存款和储蓄,你在加密下面平昔不太多的选项。要是你想加密多少,就需求在您的应用程序中加密它,然后将数据发送到远程服务器上囤积起来。

但只如果块级远程存款和储蓄,确实有多少个方法。比方说,要是你利用云托管服务,由此你能将差别的卷连接到分配的服务器,你平凡能够选拔块级存款和储蓄。卷未必
物理连接到您的托管服务器;但是,服务器能够访谈它们,好像它们正是本地卷那样,并且格式化卷,读取和写入单个扇区,就接近驱动器是本土挂载的。那意味
着,若是是块级远程存储,你能够在文件系统层面实行加密,就相近在本土Computer和地面驱动器上施行加密那样。

软件

     
未来我们知晓了想要达成的职务;难题是,你该怎么促成呢?事实上,
Linux
内置了一个软件包,使用自身事前介绍的这种办法,即把软件内置到 filesystem 软件与设备驱动程序之间。该软件名称为 dm-crypt 。而 dm-crypt
能够加密数据,然后接纳黄金年代种名叫 LUKS
的贮存格式,将数据写入到存款和储蓄设备(通过设备驱动程序)上。

LUKS ( Linux
统大器晚成密钥设置)是驱动器自己上边所用的格式,它实际上用来顶替 ext4 之类的文件系统。 dm-crypt 系统坐落于 filesystem 软件与器具驱动程序之间; filesystem 软件读取和写入 ext4 ,而 ext4 数据通过
dm-crypt 加以推送,然后 dm-crypt 将数据以 LUKS
格式存款和储蓄到驱动器上。因而,实际上 ext4 或 NTFS 之类的文件系统就在通过加密的 LUKS 格式的“下面”。

请留意: dm-crypt
是子系统的名号,你能够行使过多工具来管理它。没有名为 dm-crypt 的单个命令。你还行一些主次来治本 dm-crypt :

• cryptsetup :
那么些命令行程序为您提供了后面部分访谈权,以便管理创设 dm-crypt 处理的器械那后生可畏职分。

• cryptmount :
这一个顺序提供了越来越多的作用特色,更易于使用一些,具体可参照他事他说加以考查数年前的那篇随笔:

别的作用特色

dm-crypt
系统的二个亮点在于,它没必要直接管理磁盘驱动程序。相反,它能够将有所数据保存到单个文件中,并不是采用LUKS 和全方位磁盘分区。这就意味着,你能够让
dm-crypt
成立单个文件,然后你能够在单个文件之中创立整个文件系统。之后,你可以将该单个文件作为独立的驱动器来挂载,然后从任何软件来访问它,有如你相比其余任何驱动器这样。

澳门新萄京8522,云驱动器

鉴于有个别云服务提供商(举例亚马逊(Amazon卡塔尔(قطر‎互连网服务)为你提供了一揽子的根访谈权,能够访谈连接到您服务器的块设备,你能够丰硕利用
dm-crypt ;能够用 LUKS 格式来格式化块设备,然后将它准备用于你的 dm-crypt 系统;之后,你一点一滴能够用 ext4
文件系统来格式化它。最后结果正是截然加密的驱动器驻留在云端,你能够自动管理这一个驱动器。想不想试蓬蓬勃勃试?那篇教程就介绍了选择cryptsetup 程序来加密:

其余一些云服务提供商不像 AWS
那样让你能够直接待上访谈块设备。比如说, Digital
Ocean 就不准你向来访谈;可是你仍是可以够创设一个文书,安装 dm-crypt
来选拔十三分文件,然后在文件之中创制贰个所谓的“容器”,它象征了文件系统。实际上,那个进度与您在和煦的本地机械上创办一个加密的容器文件如出一辙。这里有生龙活虎篇来自
Digital Ocean 网址的学科:
,介绍了创办 dm-crypt LUKS
容器文件。在该课程中要专心:就如使用块设备那样,你能够成立整个文件系统(比方ext4
),可是在此边,该文件系统驻留在容器文件之中。

地面驱动器

而那就引出了小编们怎么着在本土达成那总体的话题。在亚马逊上创建加密驱动器的上述教程涉及的步子与在你和煦的硬驱上地面创设加密驱动器一个样。可是另风流洒脱篇教程(

)给出了逐月的注明,以便在你和谐的硬驱受愚地成立,它也选拔 cryptsetup 。

若是你想成立二个本土容器驱动器,含有整个经过加密的文件系统,只要依照上边Digital Ocean 教程中的步骤就可以。

依旧,要是你想行使另叁个主次 cryptmount
来加密整个分区或创设容器文件,请关心那篇教程:
。小编 Carla Schroder 给出了多少个分明的手续。

结束语

正是这么。想理解怎样加密,重要的一些是先要完全了然你实际试图实现什么职责:让应用程序加密和解密数据,照旧让操作系统管理加密;是加密整个
分区,依然单独加密个别文件;是还是不是想创建保存加密文件的器皿。之后,你可以依照本人在本文中付出链接的多少个学科中涉及的步骤,顺遂完毕加密。

本文永远更新链接地址:

读者平常询问大家的三个宽广难点是,怎样为 Linux
推行生龙活虎种文件系统加密方法。在浓厚斟酌这几个话题之…

Western Digital 的 达米恩 Le Moal 针对 Zonefs 进行描述称,“zonefs 不是
POSIX 宽容文件系统。其目标是因而采用基于功用更增进的文件的 API
替换原始块设备文件访谈,进而简化应用程序中分区块设备协理的贯彻,幸免正视直接的块设备文件
ioctl。这种措施的一个演示是,通过同意将 SSTables
存款和储蓄在与平常文件系统雷同的区域文件中,实际不是当作分区设备的扇区范围来囤积,进而在分区块设备上贯彻LSM(log-structured merge)树布局(比如在 罗克sDB 和 LevelDB
中使用)。引入更加高端别的构造“one file is one
zone”则足以扶植裁减应用程序中所需的改进量,同期允许行使带有除
C 语言之外的各个编程语言的分区块设备。”

(文/开源中夏族民共和国卡塔尔国    

近几来来,从 EnclaveISC-V 类别构造位到存款和储蓄加强功效,西部数据(Western
Digital)在 Linux
内核方面做出了越来越大的贡献。近些日子几周,其向来在拍卖的新星代码正是全新的
Linux 文件系统。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图