从 CentOS 7 中的终端日志中删除密码

从 CentOS 7 中的终端日志中删除密码

有时,用户在输入敏感命令(例如 )后尝试输入密码时会出现拼写错误su -。然后,用户将假定他们收到另一个密码请求,然后在命令提示符中键入 root 密码,并将其保留在日志中。我认为日志中的此类密码引用存在安全风险,尤其是 root 密码。

可以使用哪些特定工具和语法从日志中删除任何此类密码?

答案1

我认为有很多选择可以做到这一点,而不会导致进一步向好奇的用户暴露凭据。

例如,bash 可以选择通过变量自动排除在历史文件中记录的“命令”(或更具体地说,“条目”)HISTIGNORE,该变量是一个以冒号分隔的文本匹配列表(带有通配符)忽略。例如,您可以添加myP4*到 HISTIGNORE 变量以将其排除myP455w0Rd在记录之外,但这会将密码的第一部分暴露给任何愿意查看的人,然后他们可以猜测排除的用途。

或者,您可以有一个 cron 作业,以相当频繁的间隔运行,检查并从文件.bash_history(或 shell 的等效项)中删除此类条目,但同样可能会将匹配项(以及满足该匹配项的内容)暴露给任何愿意看的人(尽管如果它是 root 的 cronjob 的话会更安全)。

在这种情况下,最好的答案是教导用户在控制台上输入任何内容时更加小心;特别是如果他们是您信任的具有机器 root 访问权限的用户!想想(稍作修改的)格言:“看两次,执行一次” - 如果他们正在做任何涉及访问系统的事情,他们应该已经考虑到安全性了!

相关内容