heroxsx 2013-02-23
今天看到一个人写的文章,说通过.bash_history来获取SSH的私钥,很危险的说。
那么linux的.bash_history的作用是什么呢?这是一个博客上写的:
Bashshell在“~/.bash_history”(“~/”表示用户目录)文件中保存了500条使用过的命令,这样可以使你输入使用过的长命令变得容易。每个在系统中拥有账号的用户在他的目录下都有一个“.bash_history”文件。
鉴于其危险性,bashshell应该保存少量的命令,并且在每次用户注销时都把这些历史命令删除。
第一步:
“/etc/profile”文件中的“HISTFILESIZE”和“HISTSIZE”行确定所有用户的“.bash_history”文件中可以保存的旧命令条数。强烈建议把把“/etc/profile”文件中的“HISTFILESIZE”和“HISTSIZE”行的值设为一个较小的数,比如30。编辑profile文件(vi/etc/profile),把下面这行改为(有的系统没有,插入即可):
HISTFILESIZE=30
HISTSIZE=30
这表示每个用户的“.bash_history”文件只可以保存30条旧命令。
第二步:
网管还应该在"/etc/skel/.bash_logout"文件中添加下面这行"rm-f$HOME/.bash_history"。这样,当用户每次注销时,“.bash_history”文件都会被删除.