利用GoAccess分析Nginx日志

之前一直在用360星图来分析日志,但是这个项目很早就没有维护了,现在用起来体验也不是很好,所以这次我们就换用了GoAccess进行日志分析,同时星图作为一个辅助安全分析。

GoAccess官网来看,这是一款事实日志分析软件,其原理是建立一个WS服务器实时更新数据。并且他们支持目前常见的多种日志,甚至可以自定义日志格式,就比较方便。官方提供了一个在线的Demo给大家查看。

你可以从他们的源中获取到最新版本的GoAccess,但是实测发现并不直接支持GeoIP2的mmdb格式数据库,导致IPv6地址无法定位,所以我们选择手动编译安装,在这之前请保证你已经从MaxMind那边下载了最新的GeoLite2免费数据库。

1
2
3
4
5
6
$ wget https://tar.goaccess.io/goaccess-1.3.tar.gz
$ tar -xzvf goaccess-1.3.tar.gz
$ cd goaccess-1.3/
$ ./configure --enable-utf8 --enable-geoip=mmdb #默认是legacy
$ make
# make install

安装成功之后就可以进行日志分析了:

1
goaccess access.log -o report.html --log-format=COMBINED --real-time-html --geoip-database <geocityfile>

打开输出的文件即可查看实时结果,但是需要保证7890端口开放给WS服务器,并且可以被直接访问到。当然你可以去掉--real-time-html选项生成静态结果。这里说明一下这个仅支持access log,具体错误定位请自己查看error log。

  • 版权声明: 本博客所有文章除特别声明外,均采用 CC BY-SA 许可协议。转载需要标明作者,并以超链接的方式指向原文。
  • Copyrights © 2020 Kevin Li
  • 访问人数: | 浏览次数:

请我喝杯咖啡吧~