我有一个程序来存储密码保护,然而,界面是终端和密码都写得很明显。
我对安全的知识非常有限,所以不能确定它是否安全。我希望问题与此有关。
更新。这个节目是我写的。细节是不必要的,但实际上它存储了一个NumPy数组,我把它放在了云中。可见,我的意思是在一天结束时,我正在读取那个NumPy数组并打印到终端。我知道这绝对不安全,多亏了所有的人。
有办法解决吗?(希望这是一种简单的方法)
更新我的发行版是Ubuntu 18.04.4
发布于 2020-05-26 08:59:31
终端有可能驻留在磁盘上的缓冲区,即使不存在氪星(我不知道gnome终端,但我使用的是Konsole,如果您将回滚设置为无限,那么它就会在/tmp的某个地方缓冲其未加密的内容)
另外一个问题可能是你的bash_history。您输入的每个命令(在命令之前添加空格时是例外)如果您正确地关闭终端(即在系统崩溃时不关闭),将转到您的~/.bash_history文件。
因此,如果您想在控制台命令中键入诸如密码之类的敏感信息,您必须手动删除该行,或者在命令之前添加一个空格(我在任何地方都没有看到它,但我发现它是经过反复尝试的,可能对bash以外的其他shell不起作用。例如,Z中的情况并非如此。也可能有一天会从狂欢中解脱出来。谁知道)
在~/.bashrc文件中有两个变量,如下所示
HISTSIZE=2000
HISTFILESIZE=2000如果将它们设置为-1这样的负数,那么bash历史记录的大小将是无限的。如果要禁用bash历史功能,可以将其设置为零。(请注意,bash历史记录是一个有用的特性-您忘记了发出的命令(即语法或参数)。例如,我有一个年龄几乎一年的bash_history!有近六万行!)
请注意,如果在您的终端中您已经以root这样的其他用户登录,那么bash_history将转到/root/.bash_history,而不是在您的主目录中。
如果您想通过终端重新启动或停止您的系统(当您在服务器上工作、通过控制台登录或只是为了好玩),那么您应该发出以下命令:
history -c && some_halt_command为了防止历史缓冲区被刷新到bash_history中。(尽管您通过上述变量禁用了该特性,但我认为您不需要这样做)
因此:
1)从历史上手动删除这一行
2)如果使用bash (在大多数(如果不是全部)发行版中是默认的),则在命令之前添加一个空格。
3)禁用bash历史记录
发布于 2020-05-27 11:29:19
这是一种利用现有安全工具的简单方法:
#!/bin/bash
# script to pack, encrypt, and copy all content of "private"
# dir to another area that is synced with Dropbox.
cd ~
tar -cvf private.tar private/
gpg --symmetric --force-mdc -o private.tar.gpg private.tar
shred -u private.tar
mv private.tar.gpg ~/Dropbox/private你需要自己提供密码。请选择一个强的(=long)一个,例如从https://www.grc.com/passwords.htm中选择,创建一个ssh键区并使用它来实现完全自动化,例如使用crontab调度。
https://askubuntu.com/questions/1243791
复制相似问题