mariadb审计插件
Posted 雅冰石
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mariadb审计插件相关的知识,希望对你有一定的参考价值。
MariaDB审计插件的目的是记录服务器的活动。对于每个客户端会话,它会记录谁连接到服务器(即用户名和主机)、执行了哪些查询、访问了哪些表以及更改了哪些服务器变量。该信息存储在循环日志文件中,也可以发送到本地syslogd。
MariaDB审计插件可与MariaDB、mysql(自5.5.34和10.0.7版起)和Percona server配合使用
一 安装
1.1 确保mariadb服务器上有server_audit的插件库
SHOW GLOBAL VARIABLES LIKE 'plugin_dir';
+---------------+--------------------------+
| Variable_name | Value |
+---------------+--------------------------+
| plugin_dir | /usr/lib64/mysql/plugin/ |
+---------------+--------------------------+
cd /usr/lib64/mysql/plugin/
ll | grep audit
确保有server_audit.so或者server_audit.dll
如果没有这个文件,需要升级MariaDB。
1.2 安装插件
INSTALL SONAME 'server_audit';
二 配置
2.1 在线修改
MariaDB [(none)]> set global server_audit_logging=ON;
Query OK, 0 rows affected (0.012 sec)
MariaDB [(none)]> SHOW GLOBAL VARIABLES LIKE 'server_audit%';
+-------------------------------+-----------------------+
| Variable_name | Value |
+-------------------------------+-----------------------+
| server_audit_events | |
| server_audit_excl_users | |
| server_audit_file_path | server_audit.log |
| server_audit_file_rotate_now | OFF |
| server_audit_file_rotate_size | 1000000 |
| server_audit_file_rotations | 9 |
| server_audit_incl_users | |
| server_audit_logging | ON |
| server_audit_mode | 0 |
| server_audit_output_type | file |
| server_audit_query_log_limit | 1024 |
| server_audit_syslog_facility | LOG_USER |
| server_audit_syslog_ident | mysql-server_auditing |
| server_audit_syslog_info | |
| server_audit_syslog_priority | LOG_INFO |
+-------------------------------+-----------------------+
server_audit.log默认在/var/lib/mysql路径下。
2.2 永久修改
vi /etc/my.cnf.d/server.cnf
在[server]下添加:
server_audit_logging=ON
三 验证
执行几条sql,观察下server_audit.log的输出
格式:
[timestamp],[serverhost],[username],[host],[connectionid],[queryid],[operation],[database],[object],[retcode]
可以看到谁连接到服务器执行了哪些查询。
本篇文章参考了MariaDB Audit Plugin - MariaDB Knowledge Base
以上是关于mariadb审计插件的主要内容,如果未能解决你的问题,请参考以下文章
MySQL审计插件-MariaDB Audit Plugin