我们需要配置syslog-ng的配置文件
通过在/etc/syslog-ng/conf.d下创建一个扩展名为.conf的文件来扩展它。
cd /etc/syslog-ng/conf.d
vi es.conf
1.配置的第一部分定义audit.log的文件源。
source s_auditd {
文件(/var/log/audit/audit.log);
};
2.定义了Elasticsearch目标。这里我们使用新的elasticsearch-http()目的地而不是旧的基于Java的elasticsearch()目的地。为了向后兼容,type()是syslog-ng方面的必需参数。
destination d_elastic {
elasticsearch-http(
index("syslog-ng")
type("")
url("http://192.168.1.91:9200/_bulk")
template("$(format-json --scope rfc5424
--scope nv-pairs --exclude DATE --key ISODATE)")
);
};
3.第一个日志路径将本地日志发送到Elasticsearch目标而不进行任何处理。本地日志源(s_sys)在/etc/syslog-ng/syslog-ng.conf中定义,它是syslog-ng的主要配置文件。
log {
source(s_sys);
destination(d_elastic);
};
4.第二个日志路径使用Linux审计解析器解析audit.log,并进一步解析审计日志的MSG字段,其中包含有价值的信息(例如,源IP地址和SSH登录的状态)。就像之前的日志路径一样,这个也将结果存储到Elasticsearch,但在这种情况下,它包含许多有趣的名称 - 值对。
log {
source(s_auditd);
parser {
linux-audit-parser (prefix("auditd."));
};
parser {
kv-parser (template("${auditd.msg}") prefix("amsg."));
};
destination(d_elastic);
};