我的任务是使用cron (或任何与Ubuntu兼容的作业调度工具)自动化gpg解密。由于它必须是自动化的,所以我使用了--passphrase,但是它最终出现在shell历史中,所以它在流程列表中是可见的。
如何在维护良好(最好是很好的)安全标准的同时自动化解密?
举一个例子将受到高度赞赏。
发布于 2017-10-27 08:35:47
将密码保存在一个只有cron作业的用户可以读取的文件中,并使用--passphrase-file选项告诉gpg在那里读取密码。
这将确保密码在内存中的进程信息中不可见。安全性级别将取决于对存储密码的文件的访问级别(以及对包含密钥的文件的访问级别),包括其内容被复制到的任何地方(因此要注意备份)和脱机可访问性(将磁盘从服务器中取出)。这个级别的安全性是否足够将取决于您对保存文件的服务器的访问控制(无论是物理上还是在软件中),以及您想要减轻的情况。
如果您想要很好的安全标准,您需要使用硬件安全模块,而不是在本地存储密钥(和密码)。这不会阻止在原地使用密钥,但是它将防止密钥被复制并在其他地方使用。
发布于 2017-10-27 08:36:37
自动解密意味着您必须将密码存储在某个地方,或者不使用密码(除非您使用了Stephen在键入我的密码时提交的另一个答案中指出的其他选项)!这两种标准都不符合您对良好或良好安全标准的要求。
也就是说,您的需求与它的安全性不兼容。
你可以依赖这样的东西-你必须是根,我给我的密码存储的文件一个非常混乱的名字,我加密了底层文件系统,等等,但它们都是层,一旦你是根的话,它们都是微不足道的。
防止进程列表中出现密码的选项是--passphrase-file <file-name>。
然而,这并不比一开始就删除密码更安全。
https://unix.stackexchange.com/questions/400772
复制相似问题