参数配置
参数配置如下图,show global variables like '%audit%';
audit_log_policy = QUERIES,只记录查询信息;
audit_log_handler = SYSLOG,将日志信息记录到syslog中;
audit_log_syslog_facility = LOG_LOCAL2,使用syslog中自定义的local2记录MySQL审计信息;
audit_log_syslog_ident = mysql-audit,syslog中的标签信息;
audit_log_syslog_priority = LOG_INFO,syslog的日志级别为info;
syslog相关简介
syslog配置文件在/etc/rsyslog.conf,配置见下图:
配置文件中每行表示一个项目,格式为:facility.level action,常见的facility有:kern 内核信息、user 用户进程信息、mail 电子邮件相关信息、daemon 后台进程相关信息、authpriv 包括特权信息如用户名在内的认证活动、cron 计划任务信息、syslog 系统日志信息、lpr 打印服务相关信息、news 新闻组服务器信息、uucp uucp 生成的信息、local0—-local7 本地用户信息。
重要级是选择条件的第二个字段,它代表消息的紧急程度,按严重程度由低到高排序:debug 不包含函数条件或问题的其他信息、info 提供信息的消息、none 没有重要级,通常用于排错、notice 具有重要性的普通条件、warning 预警信息、err 阻止工具或某些子系统部分功能实现的错误条件、crit 阻止某些工具或子系统功能实现的错误条件、alert 需要立即被修改的条件、emerg 该系统不可用 。
因此,根据Percona MySQL Audit的参数,syslog的配置为:
syslog服务器
将MySQL Audit log记录到本地,不方便统一管理。因此,将日志文件发送到syslog服务器。
192.168.1.1就是统一存放syslog的服务器地址。为了接受日志文件,需要将/etc/sysconfig/rsyslog文件中修改为SYSLOGD_OPTIONS="-r -x -m 0",通过514端口与客户机通信。
为了规则存放,在/etc/rsyslog.conf中添加如下代码,审计日志将按照日期规则摆放,方便后期处理:
日志分析
使用filebeat采集日志,存到ES中,方便后续分析处理。filebeat配置如下:
数据存到ES后,就可以使用kibana来定制所需报表了,O(∩_∩)O哈哈~
Percona MySQL Audit的安装配置,见之前的简书:MSQL审计
网友评论