Linux中屏蔽掉history命令敏感信息
时间: 2024-10-09 11:03:05 浏览: 47
在Linux中,如果你想要屏蔽`history`命令显示的敏感信息,主要是为了保护用户的隐私,可以采取以下几种方法:
1. **修改bash配置**:编辑`~/.bashrc`文件,在`HISTCONTROL`变量下添加`ignorespace`和`ignoreboth`,这将阻止历史记录保存空行和包含密码的历史命令。加上这一行:
```
HISTCONTROL=ignorespace:ignoreboth
```
2. **设置环境变量**:创建一个新的环境变量,例如`HISTIGNORE`,指定你不想保存到历史记录中的模式。比如,你可以忽略包含`*password*`或其他敏感词的命令:
```sh
export HISTIGNORE="*password*"
```
3. **使用历史隐藏命令**:Linux提供了一个`history hide`命令,它会将含有敏感信息的命令从历史记录中移除。不过这个功能仅对当前会话有效。
4. **清理历史记录**:定期手动删除`~/.bash_history`文件,或者限制该文件的大小,防止其包含过多的历史记录。
5. **启用登录shell的umask**:在服务器上,可以使用umask设置来控制新目录的默认权限,使得其他用户无法轻易读取历史文件。
记得每次登录后,上述更改才会生效。如果你想永久地改变这些设置,需要将它们写入系统级别的配置文件,如`/etc/bash.bashrc`。
阅读全文