加密文件系统eCryptfs安装与使用

实验目的

掌握eCryptfs的执行过程和设计原理

实验环境

VMware Workstation Pro
Ubuntu 16.04

简介

参考链接

eCryptfs 是在 Linux 内核 2.6.19 版本中引入的一个功能强大的企业级加密文件系统,堆叠在其它文件系统之上(如 Ext2, Ext3, ReiserFS, JFS 等),为应用程序提供透明、动态、高效和安全的加密功能。

eCryptfs使用了两种方法来加密单个文件:
1.eCryptfs 先使用一种对称密钥加密算法来加密文件的内容,密钥FEK(File Encryption Key)随机产生。

2.FEK 不能以明文的形式存放(否则就没有存在的意义了),因此 eCryptfs 使用用户提供的口令(Passphrase)、公开密钥算法(如 RSA 算法)或 TPM(Trusted Platform Module)的公钥来加密保护刚才提及的 FEK。

如果使用用户口令,则口令先被Hash函数处理,然后再使用一种对称密钥算法加密 FEK。口令/公钥称为 FEFEK(File Encryption Key Encryption Key),加密后的 FEK 则称为 EFEK(Encrypted File Encryption Key)。
由于允许多个授权用户访问同一个加密文件,因此 EFEK 可能有多份
这种综合的方式既保证了加密解密文件数据的速度,又极大地提高了安全性。虽然文件名没有数据那么重要,但是入侵者可以通过文件名获得有用的信息或者确定攻击目标,因此,最新版的 eCryptfs 支持文件名的加密。

实验要求

1)简要说明eCryptfs进行读/写操作时的工作流程

读操作:ext3从硬盘中读取ext3格式的文件内容,eCryptfs从文件内容中分离头部信息及加密数据块。分析头部信息,获取加密后的FEK,再根据用户输入的口令验证解密FEK,以FEK为密钥解密数据块,按原序组合在一起,形成eCryptfs格式的文件内容,将明文放入内存中以供读取。

写操作:eCryptfs把应用程序提供的,需要加密的文件内容划分为一页页数据块,调用系统函数随机生成FEK,(形成eCryptfs格式的文件内容)。再根据用户定义的口令生成EFEK加密FEK,组织成头部信息与以FEK为密钥加密后的数据块,以ext3格式一并存放至磁盘

2) eCryptfs 属于本地堆叠式加密文件系统的范畴

实验过程中,eCryptfs支持的加密方式,每种加密方式的加密块大小及使用密钥长度是多少显示如下图

3)挂载的概念

基于Unix的目录树结构,即由目录和文件构成的倒立的树形层次结构。

Unix类操作系统中,一个文件系统A可以挂载到另一个文件系统B中的一个目录上(该目录就称为挂载点)

4)实验内容

a. eCryptfs安装

#sudo apt-get install ecryptfs-utils

安装完成后,查看如何使用ecryptfs 的命令:

#man ecryptfs

b. 使用eCryptfs挂载文件目录

$sudo mount -t ecryptfs real_path ecryptfs_mounted_path

-t:指定文件系统类型,这里我们使用ecryptfs文件系统
real_path:真实存放数据的地方
ecryptfs_mounted_path:指挂载位置(具体位置任意)
c. eCryptfs取消挂载:

$sudo umount -t ecryptfs ecryptfs_mounted_path

d.创建目录

#mkdir realdir
#mkdir mountdir

我们在主文件夹下新建两个文件夹 realdir,mountdir,使用 realdir作为文件真实目录,用 mountdir作为挂载目录

e. 测试1
在mountdir目录中,创建文件file1,随意输入内容。
使用如下命令进行查看,比较不同

#cat realdir/file1

可以看到输出都是加了密的密文
#cat mountdir/file1

结果如图

f. 测试2
在realdir目录中,创建文件file2,随意输入内容。
使用如下命令进行查看,比较不同。

#cat realdir/file2
#cat mountdir/file2

(如下图所示)

umount之前情况如图

umount之后该挂载点如下

对比初始时的显示发现,已经将挂载点删除。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值