一、前言
在LINUX安全范畴中,安全溯源也是很重要的一个环节。对主机上所有曾操作过的命令详细信息需要有一份记录保存,当系统遭受破坏或者入侵,拿出这份记录,可以帮助定位一些可疑动作。
很多系统通常都会配置安全堡垒机,通过安全的方式登录主机后,所有的行为都会被堡垒机录像或者记录下操作命令。但是如果黑客或者破坏人员,他可能会是通过非常规方式,其他通道登录的主机进行的操作,这个时候指望堡垒机,一般是无法溯源到。
所以,我们需要在操作系统层,在加一道安全防护配置,自动记录所有登录shell后的操作记录。
二、实现过程
增加系统环境变量,定义好记录日志的相关命令参数。只要用户登录上了主机shell环境,就会加载系统环境变量,此时所有的操作就会记录到/var/log/message日志中。
注:编辑/etc/profile文件,添加保存下面参数即可。命令中定义了操作用户、操作时间、操作命令、操作地点。
export PROMPT_COMMAND='{ msg=`history 1`;user=`whoami`; logger -p local6.notice -s "`date "+%F %R:%S"`:$user:CommanD:$msg:`who am i`" > /dev/null 2>&1;logscript $msg > /dev/null 2>&1; }'
三、实现效果
配置完成后,重新登入一个终端,此时操作任何命令后,可以看到命令相关信息已被记录到message文件中。
需要注意的是,大多数情况下,做了这一步我们都可以从日志中找到一些有用信息。但黑客或者破坏者通常也会有反溯源的动作,比如清空掉message日志,这时我们从本机上看不到任何信息 。所以完整的安全防护体系中,建议配置下第三方日志平台或者备份平台,这些敏感记录可以实现异地备份的效果,从而补充大家的溯源手段。
最后,如果觉得本文对你有帮助,欢迎点赞、收藏、评论!
There are many things that can not be broken!