初试eCryptfs文件加密系统

eCryptfs的安装

Debian,Ubuntu或其衍生版:
$ sudo apt-get install ecryptfs-utils

CentOS, RHEL or Fedora:
$ yum install ecryptfs-utils

Arch Linux:
$ sudo pacman -S ecryptfs-utils

使用eCryptfs

1.mount 需要root权限,我们使用 命令sudo ,来以root身份运行命令

结果如下:

passphrase:

(这是要你输入密码,自己编一个。一定要记住。另外密码是不会有任何显示的,输完回车就行)

select cipher:

(选择加密方式,不选默认是[aes]。最好记住自己的选择)

select key bytes:

(选择加密位数,不选默认是[16]。最好记住自己的选择)

enable plaintext passthrough(y/n) [n]:

(是否允许使用明文,默认是 n)

enable filename encryption (y/n) [n]:

(是否把文件名也进行加密,默认是 n。如果选择y,那么在没有解密 的情况下是无法看见文件夹内部的文件的)

如果设置的密码是第一次使用,它会提示你密码被标识为[799d2f922c0f1f26] 。当然,你的密码标识肯定不会是这个。并且告诉你挂载错误,因为/root/.ecryptfs/sig-cache.txt中没有相关记录。开始让你选择:

Would you like to proceed with the mount (yes/no)? :

(你是否希望继续进行挂载。我们输入yes,来完成加密)

Would you like to append sig [799d2f922c0f1f26] to

[/root/.ecryptfs/sig-cache.txt]

in order to avoid this warning in the future (yes/no)?:

(你是否把密码标识加到/root/.ecryptfs/sig-cache.txt中,免得下次再报警。我们输入yes)


如图:

2.好了,现在正常操作ecryptfs_test文件夹。

放一些文件来测试。

3.关闭解密

命令:

$ sudo umount -t ecryptfs ecryptfs_test

(如果使用的是sudo mount -t ecryptfs real_path ecryptfs_mounted_path

那么对应的命令是sudo umount -t ecryptfs ecryptfs_mounted_path)

这命令是把挂载取消了。这里的作用相当于把解密取消了,毕竟把重要文件长时间解密放着不好。

好了,再看看ecryptfs_test文件夹,里面的文件是不是都无法正确打开了?

需要解密文件夹时还是用命令:

$ sudo mount -t ecryptfs ecryptfs_test ecryptfs_test

(格式还是不变:sudo mount -t ecryptfs real_path ecryptfs_mounted_path)

passphrase:

select cipher:

select key bytes:

enable plaintext passthrough(y/n) [n]:

enable filename encryption (y/n) [n]:

上面这几相当初怎么设置的就怎么填,之后文件夹就解密了。

不用了,还是用命令解除解密状态

$ sudo umount -t ecryptfs ecryptfs_test

这里说一点,mount命令重启就失效了。如果你要关机了,不必使用

$ sudo umount -t ecryptfs ecryptfs_test

命令了。因为再次开机,解密是失效的。必须重新运行命令

$ sudo mount -t ecryptfs ecryptfs_test ecryptfs_test

如图,d2文件夹内自动加解密,d1处文件为密文

REF

百度百科——eCryptfs

原文地址:https://www.cnblogs.com/goodswarm/p/10976772.html