linux日志朔源分析记录

lastlog

记录用户最后一次登录情况

只有root最近登录过

lastlog -u 用户名或者uid

uid 直接在passwd文件中的低三位可以看到

lastb

记录用户用户登录失败的用户记录,包括用户名ip。文件位于/var/log/btmp

lastb |sort -n | uniq -c | sort -n -r | head -6

这个可以直接按照次数排列出来,统计爆破ssh的ip次数前六位

如果想直接统计ip的话,下面俩个命令都可以

lastb |awk '{ print $3}'|sort -n | uniq -c | sort -n -r | head -6
lastb |awk -F " " '{ print $3}'|sort -n | uniq -c | sort -n -r | head -6
-F表示用什么分割

统计爆破用户名

lastb |awk  '{ print $1}'|sort -n | uniq -c | sort -n -r |awk  '{ print $2}'

last

记录登录用户的信息,存储在/var/log/wtmp文件中
查询所有登录用户名出现的次数

last|awk '{print $1}'|sort -n|uniq -c|sort -n -r


统计用户登录的ip次数

last|awk '{print $3}'|sort -n | uniq -c | sort -n -r


awk和真好用哈哈

登录日志看完了 看一下apache日志。任务计划和其他暂时先不看

access log 分析

查询某个文件多少行

echo $(sed -n '$=' access_log-20200705 )

显示前200行

head access_log-20200705 -n 200


我们以其中一条带masscan特征的请求进行分析

209.97.190.223 - - [28/Jun/2020:08:06:40 +0800] "GET / HTTP/1.0" 403 4897 "-" "masscan/1.0 (https://github.com/robertdavidgraham/masscan)"

查一下 带有masscan且响应状态码为403的。

cat access_log-20200705|grep "HTTP/1.0\" 403.*masscan" -i

-i表示不分大小写

按照上面的可以直接写出统计扫描ip的命令

cat access_log-20200705|grep "HTTP/1.0\" 403.*masscan" -i|awk '{print $1}'

加上次数

cat access_log-20200705|grep "HTTP/1.0\" 403.*masscan" -i|awk '{print $1}'|sort -n | uniq -c | sort -n -r

grep 是个好东西

posted @ 2020-07-19 11:19  pickmea  阅读(566)  评论(0编辑  收藏  举报