outputs
stats.log(统计数据包信息的日志)
配置文件:默认开启,数据包统计时间间隔默认为8S
日志文件:主要统计规定时间间隔内数据包的总量,各种不同类型数据包的数量以及数据包的大小等信息
fast.log(警告输出)
配置文件:默认开启,日志内容默认为追加模式
日志输出:这个日志输出由单行的警告信息组成,比如下面这个输出例子由四个警告组成:
下面这个例子是一个简单的报警信息
03/26/2018-20:22:37.097370 [**] [1:0:0] hit baidu.com... [**] [Classification: (null)] [Priority: 3] {TCP} 10.2.41.231:48910 -> 221.130.253.135:8080
时间戳 03/26/2018-20:22:37.097370 报警信息分隔符 [**] 报警信息内容 hit baidu.com... 类型分类 [Classification: (null)] 优先级 [Priority: 3] 匹配到的协议类型 {TCP} 源IP地址以及端口 10.2.41.231:48910 数据流向 -> 目标IP地址以及端口 221.130.253.135:8080
eve.json(事件输出日志)
Suricata可以在匹配一条规则后记录一条信息,该条信息包括数据包的时间戳、五元组信息(通常是指源IP地址,源端口,目的IP地址,目的端口和传输层协议)、对应的签名信息等。
unified2.alert(数据包输出)
当suricata检测到一个可疑的数据包时便可以将整个数据包以二进制的方式存储到文件中,目前已经支持了IPv4和IPv6的数据包,这是一个用于将suricata输出的包存储到数据库中的程序,可以配合Sguil(参考网页)进行对网络流量的实时监控和输出 ,在这个选项里还有一个X-Forwarded-For功能,这个功能是用来记录经过多个HTTP代理服务器之后真正的客户端IP地址,而不是代理服 务器的IP地址,HTTP协议会在头里面加入一个X-Forwarded-For字段以记录原始IP以及经过的每个代理服务器的IP。
配置文件:默认未开启,默认32M的限制,所以在文件大于这个值时便会新建一个文件继续存储
http.log(HTTP日志)
HTTP日志会记录所有的HTTP流量信息,包含了http请求、HOST字段、URI字段和User-Agent字段,这里是普通的输出,除此之 外也可以在eve-log中指定http以便输出json格式的内容。另外也可以设置是否扩展以输出更多的信息
配置文件:默认处于开启状态
tls.log(安全传输层协议日志)和dns.log(DNS日志)
log.pcap(数据包日志)
通过pcap-log选项可以保存所有的数据包,这样在检测到问题数据包时就能更容易地找到之前的流量以便对整个事件进行确认和分析。基本配置如 下,与之前的HTTP日志一样,pcap文件也是可以限定大小和文件数的,当一个文件达到限制的大小时便会创建一个新文件,同时这里还有文件数量的限制
配置中的mode有两种情况,一个是普通的normal,会将文件存储在之前指定的日志存储目录,而sguil模式则需要sguil_base_dir选项指定目录,并且存储的文件按照日期划分目录,并加上时间戳,最后一个use-stream-depth选项,如果设为“yes”只会存储不大于stream.reassembly.depth长度的数据,后面的将会舍弃(在一个stream中),“no”则会存储所有的数据包。
alert-debug.log(详细的警告日志)
如果开启这一选项,suricata会记录每一个警告产生的详细信息,包括数据包、规则等各种信息。一个典型的输出如下所示,这些信息可以使得维护人员更快的排除误报、检查规则的问题等,虽然这个功能非常有用,但是在生产环境中启动并不是一个明智的行为,它会在检测流时处理和输出大量的信息,导致性能有很大的下降,因此默认的配置是不开启的
Syslog
这个选项决定了是否将suricata的警告输出到syslog文件中
Drop.log
当suricata工作在IPS模式下的时候,可以使用drop操作的规则,这些drop掉的数据包信息就会存储在drop.log文件中