由上一个小节里面我们知道了 syslog.conf 的配置,也知道了登录文件内容的重要性了,所以,如果幻想你是一个很厉害的黑客,想利用他人的计算机干坏事,然后又不想留下证据,你会怎么作?对啦!就是离开的时候将屁股擦干净,将所有可能的信息都给他抹煞掉,所以第一个动脑筋的地方就是登录文件的清除工作啦~如果你的登录文件不见了,那该怎办?
为什么登录文件还要防止被自己 (root) 不小心所修改过呢?鸟哥在教 Linux 的课程时,我的学生常常会举手说:『老师,我的登录文件不能记录资讯了!糟糕!是不是被入侵了啊?』怪怪!明明是计算机教室的主机,使用的是 Private IP 而且学校计中还有抵挡机制,不可能被攻击吧?查询了才知道原来同学很喜欢使用『 :wq 』来离开 vim 的环境,但是 syslog 的登录文件只要『被编辑过』就无法继续记录!所以才会导致不能记录的问题。此时你得要 (1)改变使用 vim 的习惯; (2)重新启动 syslog 让他再继续提供服务才行喔!
我们在第七章谈到过 lsattr与 chattr这两个东西啦!如果将一个文件以 chattr 配置 i 这个属性时,那么该文件连 root都不能杀掉!而且也不能新增数据,嗯!真安全!但是,如此一来登录文件的功能岂不是也就消失了?因为没有办法写入呀!所以罗,我们要使用的是a 这个属性!你的登录文件如果配置了这个属性的话,那么他将只能被添加,而不能被删除!嗯!这个项目就非常的符合我们登录文件的需求啦!因此,你可以这样的添加你的登录文件的隐藏属性。
[root@www ~]# chattr +a /var/log/messages [root@www ~]# lsattr /var/log/messages -----a------- /var/log/messages加入了这个属性之后,你的 /var/log/messages 登录文件从此就仅能被添加,而不能被删除,直到root 以『 chattr -a /var/log/messages 』取消这个 a 的参数之后,才能被删除或移动喔!