警告
没有切实可行的方法可以完全阻止用户保存他们自己的 bash shell 历史记录。
用户仍然可以通过手动声明 HISTFILE 变量来获得自动保存的 shell 历史记录。
用户可以将以下内容添加到他们的 ~/.bash_profile 或者 ~/.bashrc 以创建他们自己的历史文件。
HISTFILE=$HOME/.my_history_file
为了让用户更难让他们的 bash 进程自动保存命令历史记录,请执行以下步骤。
将 unset HISTFILE 添加到全局配置,如本文开头所述。
作为 root,获得每个用户主目录中 ~/.bashrc 和 ~/.bash_profile 文件的所有权,例如:
# chown root:root ~bob/.bashrc ~bob/.bash_profile
作为 root,使这些相同的文件(在每个用户的主目录中)不可变,例如:
# chattr +i ~bob/.bashrc ~bob/.bash_profile
请注意,执行这些步骤不会阻止用户每次启动 bash 进程时从命令行手动声明 HISTFILE 变量。
所以如果有人声明了一个变量 HISTFILE,他仍然可以将命令历史保存到一个文件中。
on it road.com
解决方案:
在 /etc/profile 或者新的 /etc/profile.d/*.sh 文件的末尾添加如下一行
unset HISTFILE
这将使每个用户的 bash shell 跳过保存历史文件,除非用户手动配置 HISTFILE 变量。
问题
如何禁用 BASH shell 历史记录,使其不保存用户的 shell 历史记录?
日期:2020-09-17 00:12:14 来源:oir作者:oir