suricata输出-自定义格式日志

2019-07-05  本文已影响0人  lx_jian

1.自定义http日志记录

从Suricata 1.3.1开始,您可以启用自定义http日志记录选项。

在Suricata.yaml中,找到http-log部分并进行如下编辑:

图1

在您的http.log文件中,您将获得以下内容,例如:

8/28/12-22:14:21.101619-Mozilla/5.0(X11;Ubuntu;Linuxi686;rv:11.0)Gecko/20100101Firefox/11.0HTTP/1.1GETus.cnn.com/video/data/3.0/video/world/2012/08/28/hancocks-korea-typhoon-bolavan.cnn/index.xml20016856192.168.1.91:45111->157.166.255.18:80

支持的格式字符串列表如下:

%h - 主机HTTP标头(远程主机名)。即:google.com

%H - 请求协议。即:HTTP / 1.1

%m - 请求方法。即:GET

%u - 包含查询字符串的URL。即:/搜索?q = suricata

%{header_name} i - 已定义的HTTP请求标头名称的内容。即:

            %{User-agent} i:Mozilla / 5.0(X11; Ubuntu; Linux i686; rv:11.0)Gecko / 20100101 Firefox / 11.0

            %{X-Forwarded-For} i:输出X-Forwarded-For HTTP标头中包含的IP地址(由反向代理插入)

%s - 返回状态代码。在301和302的情况下,它将在括号中打印URL。即:200

%B - 响应大小(以字节为单位)。即:15789

%{header_name} o - 已定义的HTTP响应标头名称的内容

%{strftime_format] t - 所选strftime格式的HTTP事务的时间戳。即:08/28 / 12-22:14:30

%z - 精确时间(以秒为单位)。即:693856

%a - 客户端IP地址

%p - 客户端端口号

%A - 服务器IP地址

%P - 服务器端口号

任何不可打印的字符将以十六进制格式的字节值表示(| XX |,其中XX是十六进制代码)

2.自定义tls日志记录

在Suricata.yaml中,找到tls-log部分并进行如下编辑:

图1

在您的tls.log文件中,您将获得以下内容,例如:

12/03/16-19:20:14.8585910.10.10.4:58274->192.0.78.24:443VERSION='TLS 1.2'suricata-ids.orgNOTBEFORE='2016-10-27T20:36:00'NOTAFTER='2017-01-25T20:36:00'

支持的格式字符串列表如下:

%n - 客户SNI

%v - TLS / SSL版本

%d - 证书日期不在之前

%D - 证书日期不在之后

%f - 证书指纹SHA1

%s - 证书主题

%i - 证书发行人dn

%E - 扩展格式

%{strftime_format} t - 所选strftime格式的TLS事务的时间戳。即:08/28 / 12-22:14:30

%z - 精确时间(以秒为单位)。即:693856

%a - 客户端IP地址

%p - 客户端端口号

%A - 服务器IP地址

%P - 服务器端口号

任何不可打印的字符将以十六进制格式的字节值表示(| XX |,其中XX是十六进制代码)

3.日志轮换

配置文件的输出部分中的所有输出都可以进行日志轮换

对于大多数输出​​,需要外部工具(如logrotate)来轮换日志文件,同时将SIGHUP发送到Suricata以通知它日志文件已被旋转。

收到SIGHUP后,Suricata会关闭所有打开的日志文件,然后在追加模式下重新打开它们。如果外部工具已重命名任何日志文件,则将创建新文件,否则将重新打开文件并将新数据附加到它们,而不会产生明显影响。

以下是一个示例logrotate配置文件,它将旋转Suricata日志文件,然后向Suricata发送一个SIGHUP,触发Suricata打开新文件:

/var/log/suricata/*.log /var/log/suricata/*.json

{

    rotate 3

    missingok

    nocompress

    create

    sharedscripts

    postrotate

            /bin/kill -HUP `cat /var/run/suricata.pid 2>/dev/null` 2>/dev/null || true

    endscript

}

注意:

上面的logrotate配置文件取决于是否存在Suricata PID文件。如果在守护进程模式下运行,则默认情况下将创建一个PID文件,否则该 --pidfile选项应用于创建PID文件。

除了上面讨论的SIGHUP样式轮换之外,一些输出支持它们自己的基于时间和日期的轮换,但是旧的日志文件的删除仍然是外部工具的责任。这些产出包括:

Eve

Unified2

PCAP log

上一篇下一篇

猜你喜欢

热点阅读