公司有一台飞塔防火墙,是基于utm的,很多功能都过期了,之前我配置了破解的anlayer来收集分析防火墙策略日志,非常好用,但是这玩意要钱,只能试用30天,我是把系统时间调成了2017年,避免到期,但是收集的时间不准,非常麻烦。
如下所示:
所以想用graylog3.0来收集分析飞塔防火墙的日志
首先graylog是一个大数据分析平台,只拿来收集日志有点大材小用,但是我又不懂大数据=。=
1、graylog 的content packs和marketplace
content pack(内容包)内容包是共享配置的便捷方式。内容包是一个JSON文件,其中包含一组Graylog组件的配置。可以将此JSON文件上载到Graylog实例,然后进行安装。花费时间为特定类型的日志格式创建输入,管道和仪表板的用户可以轻松地与社区分享他的努力。
graylog marketplace是分享和购买内容包的市场。
可以简单理解为,有很多大神提供给了不同的数据分析方式供人下载使用,满足不通的数据分析需求
地址为
https://marketplace.graylog.org/
收索forita相关
搜索结果如下:
我使用第一个
包含了github地址和配置方法
github地址为https://github.com/juiceman84/Fortigate_Content_Pack
2、graylog导入内容包
登陆graylog后,在system->connet packs中配置内容包
可以看到系统自带内容包,点击create a content pack来导入
然后按照如下填写
切记 url要填写 github地址https://github.com/juiceman84/Fortigate_Content_Pack
然后下一步,不用调整
再然后下一步
其他的不用管,因为我也不知道是干嘛的 然后点击create
完成后点击安装
此时内容包就已经安装完毕了,是不是很简单
但是你以为简单是因为不知道那么多选项是干嘛的=。=
3、配置input
在system->input中配置日志接收方式
因为防火墙日志都是syslog格式,所以要新建一个syslog udp的input
按照如下进行配置即可,端口是30000,这是内容包说明要求的,udp还是tcp协议取决于防火墙是否支持,公司这款飞塔防火墙只支持udp协议
完成后,去防火墙上配置日志发送,端口需要一致
然后去配置input的extrators(提取器),所谓提取器以下是官方说明
简单来说,就是syslog协议太简单了,需要提取器来配置一定的格式,比如显示时间,主机,内容等,不然收集到的日志就是一堆乱糟糟的cvs文本
然后在action中点击import extrators
这里要求你输入一段json格式代码
老子搞运维的,懂哥毛的json
不要紧,之前内容包的github中已经包含了提取器的json,只是要我们手动写入
然后把代码复制粘贴
然后点击添加
添加成功后,可以看到出现了很多提取器,这是之前内容包中配置好的
配置完了后,然后就可以收集了,点击启动
然后就就可以看到收集的信息了
4、配置
收集的日志信息很乱,包括策略日志,信息日志,而且内容很杂,所以要调整
首先配置信息显示的字段(fields),包括日期啊,源地址,目的地址等,不要都选,选择重要的即可,按照防火墙策略五元组信息(源目的端口,原目的地址,协议)进行勾选
其次,在搜索框中,输入搜索的信息类型,使用type=traffic代表过滤出流量类型的信息
说明:
1、搜索框中,输入字段 type=taffic,代表流量
2、这些可以选择的字段,是因为配置了内容包采用,没有配置内容包,是没有这些字段过滤和选择的
简单说明下字段作用
timestamp:时间戳
source:发送日志的源设备
dst:目的地址
dst_int:目的接口
level:日志等级
msg:处理动作
policyid:命中的策略id
proto:协议类型
servie:服务类型
sercetiy:安全等级
src:源地址
src_int:源接口
tpye:日志类型
基本上有这些东西就可以分析策略日志了
然后我们点开一个信息
就可以看到信息具体类容,基本上就是一条防火墙策略信息,很详细
然后我们可以把搜索的结果保存,方便下次直接使用
同时可以把搜索的结果放到仪表盘中
除了可以搜索以外,还可以配置字段统计,比如统计源地址排行,策略排行等
比如配置策略数量排行,就可以看到哪些策略被引用的最多
配置generate chart(通用图标),可以查看一定时间内的字段信息的数量和保存的空间大小,可以添加到仪表盘
配置Quick values,可以统计一定数量,图形,默认饼图统计,可以添加到仪表盘
字段统计,统计该字段出现的数量,最大值,最小值等,可以添加到仪表盘
最后一个world map,需要配置地理信息扩展,显示字段在地理区域出现的频率,这次用不上
好了来看看仪表盘,配置好了后,可以直接展现
基本上就能满足日常运维需要了
5、思考与扩展
1、graylog支持流式计算和告警,就是说支持实时的讲收集到数据按照一定的规则进行过滤,然后按照配置的告警规则进行告警,但是我没配置成功过,看来需要去学大数据相关知识
2、graylog的搜索语法太简单了,而且不准,感觉就是简单的正则匹配,比起splunk还有其他专门自带搜索语法的日志软件,差太远了
3、防火墙的日志量十分巨大,基本上发送量高峰是每秒1500条信息,ipos峰值30,带宽峰值30MBps要占用5G左右的存储空间。我的graylog几次差点挂了,IO承受不住,实际生产使用,不要用虚拟机化,也可以考虑分布式多节点部署,分摊压力
4、简单测试了存储压力,1000条数据美妙,数据写入大小,4-8kB较多,64-512kB其次,70%左右的随机写IO,平均IO写延迟100ms,对存储的要求还是有的
5、cpu和内存压力,16g内存平均占用99.5%,2路4核8vcpu长期占用88.5%,此时graylog明显搜索和反应缓慢
graylog的优势就是开源,简单,开箱易用,使用内容包,几乎可以收集分析任何类型的数据
但是对于 防火墙日志收集,还是得有专门硬件比较好