【问题标题】:Linux bash shell script with password hide for truecrypt用于 truecrypt 的带有密码隐藏的 Linux bash shell 脚本
【发布时间】:2012-06-24 12:47:23
【问题描述】:

我尝试创建自己的 linux bash 脚本,该脚本调用 truecrypt 进行挂载。作为选项,需要为 truecrypt 文件设置密码。我可以在 bash 脚本中执行此操作,但如果有人打开它,他们可以看到密码。该脚本稍后将自动运行。

我的问题:有什么安全的方法可以隐藏/加密密码吗?

例子:

truecrypt --mount --password="testing" /home/username/test.tc /home/username/mount/

感谢您的帮助!

【问题讨论】:

  • 我认为没有用户的交互是不可能的

标签: linux bash shell passwords truecrypt


【解决方案1】:

使用 SHC。它使用 RC4 加密 shell 脚本,并从 shell 脚本中生成可执行的二进制文件,您可以运行它。

下载SHC(http://www.datsi.fi.upm.es/~frosal/)并安装。

在 "truecrypt --mount --password="testing" /home/username/test.tc /home/username/mount/" 中创建一个 shell 脚本并将其保存为 "yourfilename.sh"。

现在,运行命令:

shc -f yourfilename.sh

开关“-f”指定要加密的源脚本。上述命令将创建两个文件:yourfilename.sh.x.c 和 yourfilename.sh.x。

“shc”程序从您的 shell 脚本中创建 C 源代码,然后对其进行加密(yourfilename.sh.x.c)。加密的 shell 脚本是:yourfilename.sh.x。运行该二进制文件并执行您的命令:

./script.sh.x

【讨论】:

    【解决方案2】:

    没有人能够读取密码,就没有安全的方法来存储密码。您唯一的选择是使用用户权限来限制谁可以看到它。作为一种选择,您可以使脚本仅对其中包含密码的用户可读。另一种方法是让脚本从具有类似权限集的文件中读取密码(这只是让您在更新脚本等方面更加灵活)。

    最终,尽管任何管理员/超级用户都可以读取该文件,所以这不是您可以安全地做的事情。大多数人建议的事情是让脚本自动运行并提供一个 GUI 供用户输入密码。这些根据您的分布而有所不同,但它们通常存在。

    【讨论】:

      猜你喜欢
      • 2013-04-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-05
      • 2018-11-22
      • 1970-01-01
      • 2021-09-13
      • 2012-02-16
      相关资源
      最近更新 更多