Linux日志分析技巧(安全)
一、日志简介
日志默认存放位置:/var/log/
日志文件名 说明 /var/log/cron # 记录了系统定时任务相关的日志 /var/log/dmesg # 记录了系统在开机时内核自检的信息,也可以便用dmesg命令直接查看内核自检信息 /var/log/mailog # 记最邮件信息 /var/log/message # 记录系统重要信息的日志,这个日志文件中会记录Linux系统的绝大多数重要信息,如果系统出现问题时,首先要检查的就应该是这个日志文件 /var/log/btmp # 记景错误登景日志,这个文件是二进制文件,不能直接vi查看,而要便用lastb命令查看 /var/log/lastlog # 记录系统中所有用户最后一次登录时间的日志,这个文件是二进制文件,不能直接vi,而要使用lastlog命令查看 /var/log/wtmp # 永久记录所有用户的登录、注销信息,同时记录系统的启动、重启、关机事件。同样这个文件也是一个二进制文件,不能直接vi,而要使用last命令来查看 /var/log/secure # 记录验证和授权方面信息,只要设计账号和密码的程序都会记录,比如SSH登录,su切换用户
二、日志分析技巧
Linux下常用的shell命令如:find、grep 、egrep、awk、sed。
2.1 常用小技巧
(1)grep显示前后几行信息
grep -C 5 starcto file # 显示file文件里匹配starcto字串那行以及上下5行 grep -B 5 starcto file # 显示starcto及前5行 grep -A 5 starcto file # 显示starcto及后5行
(2)grep 查找含有某字符串的所有文件
[root@ansible log]# grep -rn "crash" * : 表示当前目录所有文件,也可以是某个文件名 -r 是递归查找 -n 是显示行号 -R 查找所有文件包含子目录 -i 忽略大小写
(3)如何显示一个文件的某几行
[root@ansible log]# cat message | tail -n +1000 | head -n 2000 # 从第1000行开始,显示2000行。即显示1000~2999行
(4)如何在某个目录下查找文件
[root@ansible ~]# find /etc -name init
(5)只是显示/etc/passwd的账户
[root@ansible ~]# cat /etc/passwd |awk -F ':' '{print $1}' # awk -F指定域分隔符为':',将记录按指定的域分隔符划分域,填充域,$0则表示所有域,$1表示第一个域,$n表示第n个域。
2.2 安全日志分析
# 定位有多少IP在爆破主机的root帐号 grep "Failed password for root" /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr | more # 定位有哪些IP在爆破 grep "Failed password" /var/log/secure|grep -E -o "(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)"|uniq -c # 爆破用户名字典是什么? grep "Failed password" /var/log/secure|perl -e 'while($_=<>){ /for(.*?) from/; print "$1\n";}'|uniq -c|sort -nr # 登录成功的IP有哪些 grep "Accepted " /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr | more #登录成功的日期、用户名、IP grep "Accepted " /var/log/secure | awk '{print $1,$2,$3,$9,$11}'
作者:UStarGao
链接:https://www.starcto.com/systemtool/184.html
来源:STARCTO
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
UCloud云平台推荐
随便看看
- 2021-11-03Redis持久化解决方案实操
- 2021-10-08Microsoft SQL Server安装部署教程
- 2021-06-11Linux常用命令工具集合
- 2021-03-18Linux入侵检测AIDE-检查文件的完整性
- 2021-09-27MongoDB compact 操作介绍-碎片整理