LINUX安装goaccess分析nginx日志,开启SSL

编程开发 / / at

网站被攻击,需要一个工具实时监控网站流量变化,最后选中了轻量且功能强大的goaccess,能生成实时的HTML文件,以供访问,具体步骤如下:

因为我的网站是开启SSL,安装的时候尤其要注意这部分,实时数据是通过WEBSOCKET发送数据,配置有差错就不能实时了。

1、goaccess官网: https://goaccess.io/download

2、其中安装步骤要改这一行,以使用SSL

./configure --enable-utf8 --enable-geoip=legacy --with-openssl
3、默认配置文件在这里
/usr/local/etc/goaccess.conf
4、在此文件的最上面加上以下配置

time-format %H:%M:%S
date-format %d/%b/%Y
log-format %h %^[%d:%t %^] “%r” %s %b “%R” “%u”

real-time-html true
ssl-cert /www/wwwroot/www.haoship.cn/config/cert/xxx.crt
ssl-key /www/wwwroot/www.haoship.cn/config/cert/xxx.key
ws-url wss://www.haoship.cn
port 7890
output /www/wwwroot/www.haoship.cn/public/report.html

前三行是时间和日志格式,需要和nginx配置相同,如果没做特别改动,直接使用上面就好;

real-time-html开启实时数据统计分析;

ssl-cert和ssl-key是网站SSL证书文件;

ws-url和port是通过websocket实时调取数据的路径和端口,这个7890端口,一定要在防火墙里打开;

output就是把生成的html输出到对应的目录,直接打开就好,比如我的地址是www.haoship.cn/report.html

5、LINUX直接运行下列命令就好了,log文件就是要分析的日志路径,daemonize是在后台运行的意思。

goaccess –config-file=/usr/local/etc/goaccess.conf /www/wwwlogs/www.haoship.cn.log –daemonize

6、下面讲讲如何实现开机自动启动:

新建文件goaccess.sh,内容如下

#!/bin/bash
goaccess –config-file=/usr/local/etc/goaccess.conf /www/wwwlogs/www.haoship.cn.log –daemonize

给此文件增加执行权限

chmod +x goaccess.sh

编辑文件/etc/rc.d/rc.local

在最下面增加一行

/www/wwwroot/goaccess.sh >/www/wwwlogs/goaccess.log 2>&1

log是启动日志存储地址。

这样每次开机,goaccess就能自动运行了。

发表评论

电子邮件地址不会被公开。 必填项已用*标注