使用EncFS加密您的数据(Fedora 17)
EncFS在用户空间中提供加密的文件系统。 它运行没有任何特殊权限,并使用FUSE库和Linux内核模块提供文件系统接口。 它是一个传递文件系统,而不是加密的块设备,这意味着它是在现有文件系统之上创建的。 本教程将介绍如何在Fedora 17上使用EncFS来加密数据。
我不会保证这将为您工作!
1初步说明
我在Fedora 17系统上使用用户名falko
在本教程中
2安装EncFS
成为第一:
su
然后可以如下安装EncFS
yum install fuse-encfs
退出根shell:
exit
您现在应该看看EncFS手册页,以了解其选项:
man encfs
3使用EncFS
我现在将在我的主目录中创建加密
和解密
的目录:
mkdir -p ~/encrypted
mkdir -p ~/decrypted
解密的
目录充当加密
目录的安装点。 要挂载〜/加密
到〜/解密
,只需运行:
encfs ~/encrypted ~/decrypted
如果首次运行此命令,则会启动EncFS安装程序,并且必须为加密卷定义密码:
[falko @ localhost〜] $ encfs〜/ encrypted〜/解密
创建新的加密卷。
请从以下选项之一进行选择:
为专家配置模式输入“x”
输入“p”作为预配置的偏执模式,
任何其他的,或空行将选择标准模式。
?>
< - p
选择偏执配置。
配置完成
要创建的文件系统具有
以下属性:
文件系统密码:“ssl / aes”,版本3:0:2
文件名编码:“nameio / block”,版本3:0:1
键大小:256位
块大小:1024字节,包括8字节的MAC头
每个文件包含具有唯一IV数据的8字节头。
使用IV链接模式编码文件名。
文件数据IV被链接到文件名IV。
文件孔传递到密文。
- - - - - - - - - - - - - 警告 - - - - - - - - - - - - --- ---
外部初始化向量链接选项已经
启用
此选项将禁用硬链接
文件系统。
没有硬链接,一些程序可能无法正常工作。
已知程序“mutt”和“procmail”失败。
对于
更多信息,请参阅encfs邮件列表。
如果您想选择其他配置设置,
请现在按CTRL-C中止并重新开始。
现在您需要输入文件系统的密码。
您将需要记住这个密码,因为绝对是这样
没有恢复机制。
但是,密码可以更改
稍后使用encfsctl。
新密码密码:
< - yoursecretpassword
验证Encfs密码:
< - yoursecretpassword
[falko @ localhost〜] $
确保您记住密码,因为如果您忘记了密码,则无法恢复加密数据!
您现在应该在输出中找到EncFS卷
mount
[falko@localhost ~]$ mount
proc on /proc type proc (rw,relatime)
sysfs on /sys type sysfs (rw,relatime,seclabel)
devtmpfs on /dev type devtmpfs (rw,nosuid,seclabel,size=504616k,nr_inodes=126154,mode=755)
devpts on /dev/pts type devpts (rw,relatime,seclabel,gid=5,mode=620,ptmxmode=000)
tmpfs on /dev/shm type tmpfs (rw,relatime,seclabel)
tmpfs on /run type tmpfs (rw,nosuid,nodev,seclabel,mode=755)
/dev/mapper/VolGroup-lv_root on / type ext4 (rw,relatime,seclabel,data=ordered)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
selinuxfs on /sys/fs/selinux type selinuxfs (rw,relatime)
tmpfs on /sys/fs/cgroup type tmpfs (rw,nosuid,nodev,noexec,seclabel,mode=755)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,release_agent=/usr/lib/systemd/systemd-cgroups-agent,name=systemd)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpuacct,cpu)
cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
cgroup on /sys/fs/cgroup/net_cls type cgroup (rw,nosuid,nodev,noexec,relatime,net_cls)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=23,pgrp=1,timeout=300,minproto=5,maxproto=5,direct)
tmpfs on /media type tmpfs (rw,nosuid,nodev,noexec,relatime,seclabel,mode=755)
mqueue on /dev/mqueue type mqueue (rw,relatime,seclabel)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime,seclabel)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
configfs on /sys/kernel/config type configfs (rw,relatime)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw,relatime)
sunrpc on /proc/fs/nfsd type nfsd (rw,relatime)
/dev/sda1 on /boot type ext4 (rw,relatime,seclabel,data=ordered)
gvfs-fuse-daemon on /run/user/falko/gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,relatime,user_id=500,group_id=500)
encfs on /home/falko/decrypted type fuse.encfs (rw,nosuid,nodev,relatime,user_id=500,group_id=500,default_permissions)
[falko@localhost ~]$
和
df -h
[falko@localhost ~]$ df -h
Filesystem Size Used Avail Use% Mounted on
rootfs 28G 6.2G 21G 23% /
devtmpfs 493M 0 493M 0% /dev
tmpfs 502M 240K 502M 1% /dev/shm
tmpfs 502M 1.3M 501M 1% /run
/dev/mapper/VolGroup-lv_root 28G 6.2G 21G 23% /
tmpfs 502M 0 502M 0% /sys/fs/cgroup
tmpfs 502M 0 502M 0% /media
/dev/sda1 485M 87M 373M 19% /boot
encfs 28G 6.2G 21G 23% /home/falko/decrypted
[falko@localhost ~]$
要以加密形式保存数据,请将数据放入解密的
目录中,就像使用普通目录一样:
cd ~/decrypted
echo "hello foo" > foo
echo "hello bar" > bar
ln -s foo foo2
如果您检查目录的内容,您将看到您可以以未加密的形式看到它...
ls -l
[falko@localhost decrypted]$ ls -l
total 8
-rw-rw-r--. 1 falko falko 10 Dec 5 19:54 bar
-rw-rw-r--. 1 falko falko 10 Dec 5 19:54 foo
lrwxrwxrwx. 1 falko falko 3 Dec 5 19:54 foo2 -> foo
[falko@localhost decrypted]$
...在加密
目录中,它被加密:
cd ~/encrypted
ls -l
[falko@localhost encrypted]$ ls -l
total 8
lrwxrwxrwx. 1 falko falko 24 Dec 5 19:54 JW2UGj8FE455Fz,UeG8pssdd -> wRgqhN5pJJ-8howYSOvnP-Aq
-rw-rw-r--. 1 falko falko 26 Dec 5 19:54 novYngutPaPhTfBmaz-9Roi,
-rw-rw-r--. 1 falko falko 26 Dec 5 19:54 wRgqhN5pJJ-8howYSOvnP-Aq
[falko@localhost encrypted]$
要卸载加密的卷,请运行:
cd
fusermount -u ~/decrypted
检查...的输出
mount
...和...
df -h
...您将看到EncFS卷不再列出。
再次安装,运行
encfs ~/encrypted ~/decrypted
将要求您提供之前定义的密码:
[falko @ localhost〜] $ encfs〜/ encrypted〜/解密
EncFS密码:
< - yoursecretpassword
[falko @ localhost〜] $
如果您指定了正确的密码,那么将把〜/ encrypted
目录安装到〜/解密的
位置,从那里可以以加密形式访问加密数据。 如果您忘记密码,您的加密数据将丢失!
如果要更改密码,可以使用
encfsctl passwd ~/encrypted
命令。
[falko @ localhost〜] $ encfsctl passwd〜/ encrypted
输入当前的Encfs密码
EncFS密码:
< - yoursecretpassword
输入新的Encfs密码
新密码密码:
< - newsecretpassword
验证Encfs密码:
< - newsecretpassword
卷密钥已成功更新。
[falko @ localhost〜] $
4链接
- EncFS: http : //www.arg0.net/encfs
- Fedora: http : //fedoraproject.org/