如何加密diskdrive在(X)Ubuntu Feisty与dm-crypt和LUKS

如何使用dm-crypt和LUKS加密(X)Ubuntu Feisty中的diskdrive

一,介绍

动机

今天的安全是我们日常生活中的关键方面之一,有时是有意识的,有时是无意识的。 安全性有很多方面,其中一个是计算机安全或您或您企业的计算机数据的安全性。

在本教程中,我将展示如何使用(X)Ubuntu Feisty,dm-crypt和LUKS加密整个磁盘驱动器。

我从各种来源收集了这些信息,并把它们放在一起。 那些是:

- http://www.hermann-uwe.de/blog/howto-disk-encryption-with-dm-crypt-luks-and-debian
- https://systemausfall.org/wikis/howto/CryptoPartitionHowTo
- amayera在#ubuntu频道在irc.freenode.org

警告

本教程将销毁您使用的硬盘上的任何数据。 建议您非常小心您输入的硬盘。 不要使用它来加密您安装了Linux的硬盘。 主要目的是加密用于数据存储的附加硬盘。

一些法律考虑

还有其他加密方法可用。 最可能提到的是真正的crypt,它通过两个加密级别提供更多的可信否认性。 背后的想法是,如果有人看到你有一个大的驱动器/分区,只有抖动,它看起来像删除的数据,这个人可能会得出结论,它是一个加密分区/驱动器。 在这种情况下,您可能被强制(由法官或一些坏家伙)透露对该加密分区/驱动器的访问。 因此,您不仅可以访问真正高度的机密数据,还可以访问较少的机密数据。 这个检查员无法确定这是否是该盘上的所有信息。

到目前为止这个想法。 但是我相信,如果您有两级加密,对方将永远不会相信您已经发出了所有二级加密文件的所有关键字。 虽然这个想法很好,我只是认为你不会相信你已经提供了所有的信息,这使得它一切都没用了吗?

然而对我来说,似是而非的可否性并不重要。 在一个批准“欧洲人权宪章”的国家生活在欧洲我有基本的自由给予我保持沉默的权利,而不会面临任何消极的后果(这只会在刑事诉讼中发挥作用)。

这意味着法院命令我发出密码来激活加密的驱动器对我没有不利的后果。 如果无论如何,我可以向居住在斯特拉斯堡的欧洲人权法院提出上诉,很可能会考虑违反“宪章”的行为,并将其定罪。

在刑事诉讼中,必须证明,你作为一个人确实犯了不法行为,这在大陆诉讼中是不同的。 在某些国家,您可以对通过您的互联网帐户的信息负责,而不需要您知道这种情况,而您没有做任何事情。 在这种情况下,您的硬盘上就不需要任何证据(如果有证据显示,甚至更好...),因此加密的驱动器不会在此事上保护您。

由于这个原因,我将自己专注于由dm-crypt和LUKS提供的加密技术,它不会对多级加密数据提供这种高级合理的拒绝性。

*注意事项:由于我是在瑞士的研究生法学生,我大部分可以就瑞士的法律考虑发言。 在其他国家(在欧洲)可能会有所不同,但基本原则及其对缔约国人身保障自由的影响仍然是一样的。 此外,我使用的术语很可能不是英文中的正确法律术语,但是应该把它们看作是一个意思,以获得这个想法,我认为多层次加密在欧洲没有很大的影响。 上述声明绝对不能被视为法律惯例,因为每种情况都不同。

二, 安装必要的软件

如上所述,我使用Xubuntu Feisty来做到这一点。 这可能还适用于较旧的* buntu版本,很可能还有其他基于debian的发行版。

安装必要的软件:

sudo aptitude install cryptsetup hashalot

三, 准备你的硬盘

我们要将随机数据添加到您的硬盘。 这样就无法猜出实际上有多少隐藏的数据。 我正在使用dd方法 ,这将需要相当长的一段时间:

sudo dd if=/dev/urandom of=/dev/HARDDISK

将HARDDISK替换为您的实际例如hda或hdb或sda或sdb或....但是建议先在其上创建一个分区,然后加密该分区。 即使分区将占用整个硬盘。

这将需要一段时间。

hyper @ xubi:/ dev $ sudo dd if = / dev / urandom of = / dev / hda
dd:写入`/ dev / hda':设备上没有空格
312581809 + 0条记录
312581808 + 0记录
复制160041885696字节(160 GB),90679.8秒,1.8 MB / s

四, 加载一些内核模块

为了使用dm-crypt,我们必须加载一些内核模块。

sudo modprobe aes
sudo modprobe dm-crypt
sudo modprobe dm_mod 

如果要在启动时加载它们,则必须编辑/ etc / modules

sudo nano /etc/modules

并在文件末尾加上这个:

# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
fuse
lp
aes
dm-crypt
dm_mod

保险丝lp默认在我的文件中。 可能是,你们没有那些在那里或其他的。 只需添加aes,dm-crypt和dm_mod到这个文件。 按ctrl-x退出nano。 然后会询问您是否要保存修改后的文件。 点击输入两次。 一次保存,一次设置文件的名称。

V.创建加密分区

为了创建加密分区,执行以下命令:

sudo cryptsetup luksFormat /dev/HARDDISK

六, 映射加密分区

现在你必须映射加密分区:

sudo cryptsetup luksOpen /dev/HARDDISK DEVICENAME

该分区现在映射到/ dev / mapper / DEVICENAME

七, 格式化加密分区

sudo mkfs.ext3 /dev/mapper/DEVICENAME

八, 安装分区

首先创建一个安装点:

sudo mkdir /media/DEVICENAME

然后将分区安装到安装点:

sudo mount /dev/mapper/DEVICENAME /media/DEVICENAME

如果您由于某些原因卸载了分区,并希望稍后再安装该分区,则不必再创建文件系统。 所以只需执行sudo cryptesetup luksOpen / dev / HARDDISK DEVICENAMEsudo mount / dev / mapper / HARDDISK / media / DEVICENAME

九, 在启动时挂载

为了在启动时挂载分区,您必须编辑/ etc / crypttab并添加以下内容:

DEVICENAME	/dev/HARDDISK	none	luks,check=ext2,retry=5

当然,您还必须将其添加到/ etc / fstab文件中。 在这里添加:

# CryptoDevices
/dev/mapper/DEVICENAME	/media/HARDDISK	auto	defaults	0	0

在启动时,将提示您输入您分配给此加密设备的密码。 你会被要求最大 5次,如果输入错误的一次重试= 5 。 如果您无法提供正确的密码,系统将启动而不安装该驱动器。 但是,您仍然可以手动装载它。 见上文第八节。

X.添加/删除键

您可以向加密分区添加更多的密钥,也可以删除密钥。

要添加一个键执行:

sudo cryptsetup luksAddKey /dev/HARDDISK

删除密钥使用这个:

sudo cryptsetup luksDelKey /dev/HARDDISK

十一。 卸载分区

使用dmsetup命令可以显示设备。 其中一个活跃,任何人都可以访问它,即使它没有安装。 你只需要有必要的权利。 在这种状态下,设备被解密。

为了防止这种情况,您可以运行以下命令来正确卸载设备:

sudo umount /media/DEVICENAME && sudo cryptsetup luksClose HARDDISK

我为这个创建了一个小shell脚本,这是我需要的。

用nano编辑〜/ umount.sh并输入以下代码:

#!/bin/bash
sudo umount /media/DEVICENAME && sudo cryptsetup luksClose HARDDISK

然后使文件可执行:

sudo chmod a+x ~/umount.sh

最后为它创建一个启动器(启动图标...)。 在Xfce我用这个:

十二。 最后的笔记

那么现在你有你自己的加密分区。 您可以看看dm-crypt和luks的不同开关,也可以使用一些替代。 我在本教程中使用了一个完整的硬盘,因为我在硬盘上只有一个分区来实现安装。 但是我没有尝试太难,因为我希望我的整个硬盘加密。

如果您关闭计算机电源或仅关闭电源,则硬盘将被卸载,并且映射器将被删除。 请享用!

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏