最近网站老是被刷,以前没对log进行分析和排序过。今天正在学习,总结总结:
日志第一个字段就是ip地址,字段之间分隔符是空格:
1. 使用awk:(awk默认分割符就是空格,所以-F选项可以不要)
awk -F ' ' '{print $1}' /var/www/html/apache-tomcat-7.0.27/logs/localhost_access_log.2012-12-27.txt | sort | uniq -c | sort -u
使用awk命令输出每行的第一列 ,-F ‘ ’表示每一行上字符串之间间隔符号是空格,完了用sort排序,接着用uniq -c累计,然后再次用sort -u对累计结果排序。
2.使用cut:(需要注意的是,cut默认的分隔符是<tab>,所以-d选项是必须要的)
cut -d ' ' -f1 /var/www/html/apache-tomcat-7.0.27/logs/localhost_access_log.2012-12-27.txt | sort | uniq -c | sort -u
原理同上了。
通过ip数量的统计,将攻击IP添加到iptables