如何从终端锁定文件夹

如何从终端锁定文件夹

有没有办法lock a folder从终端(protected with password)而不使用任何第三方应用程序,如truecrypt,加密者也不授予用户权限。

就像每当用户尝试打开该文件夹时,它都会突然提示输入密码。给定的密码不能与sudo密码相似。

答案1

这可能太天真了,但是以下怎么样:

Dir成为需要密码保护的目录,密码为qwerty

mv -n Dir qwerty
mkdir Dir
mv qwerty Dir/.
chmod a-r Dir

这只会创建一个名为quertyinside 的文件夹Dir,其中包含 的内容,Dir并删除 的读取权限Dir


从终端访问:

cd Dir/qwerty

或者

cd Dir/
cd qwerty/

请注意,按 Tab 键或键入ls不会显示qwerty。换句话说,您需要知道qwerty才能到达 的原始内容Dir


从 nautilus 访问:

导航至Dir。按 Ctrl+L。qwerty在位置栏中输入以进入。


更改密码:

cd Dir
mv qwerty newpassword

这种方法存在不少问题。

  1. 获得访问权限后,密码将清晰可见于终端提示符或 nautilus 地址栏中。
  2. Dir依赖于文件系统中的确切位置的脚本将无法正常工作。
  3. 最重要的是,系统管理员无需密码即可访问内容——这可能并不可取。

除此之外,还可能存在其他安全漏洞:这从来就不是加密方案。话虽如此,从问题的角度看,我猜这可能就足够了。

答案2

经典的 sg(1) 实用程序可以执行您想要的操作,即使界面几十年都没有改变,也只是比您要求的稍微复杂一些。您所做的是创建一个没有用户和密码的特殊组(有关详细信息,请参阅 group(5) 和 gshadow(5) ),然后将文件夹的组更改为这个新组,并设置文件夹的权限以允许组访问( 0770 或 0750 ),以便当您的访客尝试通过 cd 进入该文件夹时,您将被拒绝访问。现在您使用 sg 将您的组更改为这个新组,您现在可以通过 cd 进入目录,直到您键入 exit 返回到以前的权限。

提供对 GUI 应用程序的访问带来了额外的挑战,因为 sg 是在 X11 之前编写的。

答案3

您可能正在寻找可以递归加密目录的数据gpgdir包(标准 ubuntu 存储库)。signing-party

手册页在这里:http://manpages.ubuntu.com/manpages/saucy/man1/gpgdir.1.html

答案4

我很惊讶没有人提到这个使用 zip 命令的解决方案,它不需要任何第三方包。

zip -er 文件夹.zip 文件夹

这将加密您的文件夹,并且每次打开每个文件都需要密码。

然而,这不会隐藏文件名,但如果您需要对文件名进行更强有力的保护,那么可以选择 7zip,但它没有捆绑在 Linux 版本中,特别是 ubuntu 或其变体。

相关内容