热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Linux系统上用encfs创建和管理加密文件夹

原文如果你想使你计算机上的某些信息免于被窥视的话,可以看看这篇文字。保护信息的一种方法就是加密你的home目录,但是一旦你登录系统后,你的home目录下的信息将暴露于外。过去,我已经写过关于

原文
如果你想使你计算机上的某些信息免于被窥视的话,可以看看这篇文字。保护信息的一种方法就是加密你的home目录,但是一旦你登录系统后,你的home目录下的信息将暴露于外。过去,我已经写过关于怎样在你的系统上使用Cryptkeeper来创建加密的文件夹。Cryptkeeper是一个图形前端,后端是 encfs。encfs允许你创建一个加密的文件夹,然后通过FUSE来挂载作为用户文件系统。在这篇教程里,我会教你怎么在Linux系统上的命令行下面使用encfs工具来创建和管理一个加密的文件夹。

安装encfs

如果你使用的是Ubuntu或者它的衍生版本中的一种如Linux Mint的话,在软件源库当中应该能找到encfs。这种情况,可以用下面的命令来安装

sudo apt-get install encfs 

用encfs创建加密文件夹
一旦在系统中安装好了encfs后,你就能在你的home目录下创建一个加密的文件夹。在这个示例当中,我将会创建一个叫做tuxtweaks的加密文件夹,这通过终端窗口就可以完成。当创建一个新的文件夹的时候,你需要指定全路径名,当然也可以使用如下所示的标准快捷方式。

encfs ~/.tuxtweaks ~/tuxtweaks 

这会创建两个文件夹。第一个.tuxtweaks,它包含被加密的信息;第二个tuxtweaks,当你想要访问信息的时候,解密的版本信息将会挂载到下面。如果这些文件夹都不存在,系统将会提示询问是否创建它们。在提示下面键入‘y’以允许创建文件夹,然后你应该能看到如下所示的一些信息:

Creating new encrypted volume. Please choose from one of the following options: enter "x" for expert configuration mode, enter "p" for pre-configured paranoia mode, anything else, or an empty line will select standard mode. 

如果你想要最高级别的加密文件夹的话,在提示符下输入p选项。否则只需敲击[Enter]键,就会以标准选项来创建新的加密文件夹。

之后,你将会看到新加密卷的参数列表及一些警告信息,随之提示符会让输入一个密码。确保不要忘记使用的密码,因为没有密码找回机制。在输入密码并以第二次输入校验通过后,新的文件夹会被创建成功,并自动挂载进文件系统,可以开始使用了。

使用加密文件夹

一旦新加密文件夹被挂载上,它就跟你系统上的其它文件夹一样的使用,但如果你把它设置为paranoia模式的话,使用它的硬链接会出现不可用的异常。我想,这对大多数用户来说并不是问题。让我们继续吧,在新文件夹里创建一个简单的文本文件,然后用它来做测试。

echo "GNU/Linux is my favorite computer operating system." >~/tuxtweaks/test.txt 

在终端下或在文件系统管理器下,你都能看到在tuxtweaks目录里已经有一个叫做test.txt的新文件。打开此文件可看到这里一个完全可读的文本文件。现在切换到~/.tuxtweaks目录下,这是你文件夹的加密版本,可以看到这里的文件名不一样了,如里你查看此文件的内容话,会发现是乱糟糟的。

卸载encfs创建的加密文件夹

一旦你完成文件访问或者数据创建等操作,最好把加密文件夹卸载,以便里面的信息安全的隐藏掉。encfs自身不带有卸载的命令,一旦用它创建了用户文件系统,就可以利用FUSE来处理卸载任务。下面我们会使用fusermount命令来卸载我们的加密文件夹。

fusermount -u ~/tuxtweaks 

切换到home目录下,会看到tuxtweaks目录仍然存在,但进入文件夹,你会发现里面是空的。(译注:因为tuxtweaks目录只是一个挂载点,真实的数据是以加密的方式存储在.tuxtweaks目录下的,)

挂载用encfs创建的加密文件夹

下一次你想要访问加密数据的话,你需要重新加载并解密它,仅仅只需要使用跟我们在第一步创建此文件夹相同的命令就可以。

encfs ~/.tuxtweaks ~/tuxtweaks 

用途
我发现使用encfs加密文件夹来安全地存储财务信息非常便捷,比如纳税申报表以及用于存储日志列表凭据。这样我只需要记住我加密文件夹的密码,然后就可以进入访问记录有其他登录ID和密码的名单文件。


推荐阅读
  • 本文介绍了在Android Studio中使用命令行build gradle的方法,并解决了一些常见问题,包括手动配置gradle环境变量和解决External Native Build Issues的方法。同时提供了相关参考文章链接。 ... [详细]
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • 安装mysqlclient失败解决办法
    本文介绍了在MAC系统中,使用django使用mysql数据库报错的解决办法。通过源码安装mysqlclient或将mysql_config添加到系统环境变量中,可以解决安装mysqlclient失败的问题。同时,还介绍了查看mysql安装路径和使配置文件生效的方法。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 本文介绍了在Linux下安装Perl的步骤,并提供了一个简单的Perl程序示例。同时,还展示了运行该程序的结果。 ... [详细]
  • imx6ull开发板驱动MT7601U无线网卡的方法和步骤详解
    本文详细介绍了在imx6ull开发板上驱动MT7601U无线网卡的方法和步骤。首先介绍了开发环境和硬件平台,然后说明了MT7601U驱动已经集成在linux内核的linux-4.x.x/drivers/net/wireless/mediatek/mt7601u文件中。接着介绍了移植mt7601u驱动的过程,包括编译内核和配置设备驱动。最后,列举了关键词和相关信息供读者参考。 ... [详细]
  • 本文介绍了在CentOS上安装Python2.7.2的详细步骤,包括下载、解压、编译和安装等操作。同时提供了一些注意事项,以及测试安装是否成功的方法。 ... [详细]
  • 31.项目部署
    目录1一些概念1.1项目部署1.2WSGI1.3uWSGI1.4Nginx2安装环境与迁移项目2.1项目内容2.2项目配置2.2.1DEBUG2.2.2STAT ... [详细]
  • RouterOS 5.16软路由安装图解教程
    本文介绍了如何安装RouterOS 5.16软路由系统,包括系统要求、安装步骤和登录方式。同时提供了详细的图解教程,方便读者进行操作。 ... [详细]
  • 树莓派语音控制的配置方法和步骤
    本文介绍了在树莓派上实现语音控制的配置方法和步骤。首先感谢博主Eoman的帮助,文章参考了他的内容。树莓派的配置需要通过sudo raspi-config进行,然后使用Eoman的控制方法,即安装wiringPi库并编写控制引脚的脚本。具体的安装步骤和脚本编写方法在文章中详细介绍。 ... [详细]
  • GreenDAO快速入门
    前言之前在自己做项目的时候,用到了GreenDAO数据库,其实对于数据库辅助工具库从OrmLite,到litePal再到GreenDAO,总是在不停的切换,但是没有真正去了解他们的 ... [详细]
  • 本文介绍了在Ubuntu下制作deb安装包及离线安装包的方法,通过备份/var/cache/apt/archives文件夹中的安装包,并建立包列表及依赖信息文件,添加本地源,更新源列表,可以在没有网络的情况下更新系统。同时提供了命令示例和资源下载链接。 ... [详细]
  • 2016 linux发行版排行_灵越7590 安装 linux (manjarognome)
    RT之前做了一次灵越7590黑苹果炒作业的文章,希望能够分享给更多不想折腾的人。kawauso:教你如何给灵越7590黑苹果抄作业​zhuanlan.z ... [详细]
  • 本文介绍了5个基本Linux命令行工具的现代化替代品,包括du、top和ncdu。这些替代品在功能上进行了改进,提高了可用性,并且适用于现代化系统。其中,ncdu是du的替代品,它提供了与du类似的结果,但在一个基于curses的交互式界面中,重点关注占用磁盘空间较多的目录。 ... [详细]
  • 本文探讨了容器技术在安全方面面临的挑战,并提出了相应的解决方案。多租户保护、用户访问控制、中毒的镜像、验证和加密、容器守护以及容器监控都是容器技术中需要关注的安全问题。通过在虚拟机中运行容器、限制特权升级、使用受信任的镜像库、进行验证和加密、限制容器守护进程的访问以及监控容器栈,可以提高容器技术的安全性。未来,随着容器技术的发展,还需解决诸如硬件支持、软件定义基础设施集成等挑战。 ... [详细]
author-avatar
手机用户2502887197
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有