MySQL 5.6添加审计功能

由于MySQL的社区版是不支持审计系统的,因为通过第三方的插件实现审计功能。来自McAfee的MySQL插件,为MySQL提供审计功能,重点是安全性和审计要求。该插件可以用作独立的审核解决方案,也可以配置为将数据提供给外部监视工具。

插件下载地址:

https://bintray.com/mcafee/mysql-audit-plugin/release/1.1.7-805#files

针对自己的系统和MySQL版本下载对应的插件。由于我的MySQL是5.6版本,linux系统是64位,因此下载版本为:audit-plugin-mysql-5.6-1.1.7-805-linux-x86_64

安装audit-plugin

1.查看MySQL插件目录

1
2
3
4
5
6
7
8
9
MySQL [(none)]> show global variables like 'plugin_dir';
+---------------+-------------------------------+
| Variable_name | Value                         |
+---------------+-------------------------------+
| plugin_dir    | /data/tools/mysql/lib/plugin/ |
+---------------+-------------------------------+
1 row in set (0.00 sec)
 
MySQL [(none)]>

2. 复制插件到MySQL的plugin目录

1
2
3
4
5
6
7
[root@localhost soft]# wget https://bintray.com/mcafee/mysql-audit-plugin/download_file?file_path=audit-plugin-mysql-5.6-1.1.7-805-linux-x86_64.zip
[root@localhost soft]# unzip download_file?file_path=audit-plugin-mysql-5.6-1.1.7-805-linux-x86_64.zip
[root@localhost soft]# cd audit-plugin-mysql-5.6-1.1.7-805/lib
[root@localhost lib]# cp libaudit_plugin.so /data/tools/mysql/lib/plugin/
[root@localhost lib]# cd /data/tools/mysql/lib/plugin/
[root@localhost plugin]# chmod +x libaudit_plugin.so
[root@localhost plugin]# chown mysql.mysql libaudit_plugin.so

3.安装audit-plugin插件并启动

1
2
MySQL [(none)]> INSTALL PLUGIN AUDIT SONAME 'libaudit_plugin.so';
MySQL [(none)]> SET GLOBAL audit_json_file=ON;

4.查看audit-plugin参数

1
mysql>  SHOW GLOBAL VARIABLES LIKE '%audi%';

4.查看audit-plugin版本

1
2
3
4
5
6
7
MySQL [(none)]> show global status like 'AUDIT_version';
+---------------+-----------+
| Variable_name | Value     |
+---------------+-----------+
| Audit_version | 1.1.7-805 |
+---------------+-----------+
1 row in set (0.00 sec)

6.常用参数说明

audit_json_file        #是否开启audit功能(ONOFF)

audit_json_log_file     #log日志名称及存储位置,默认mysql的data目录

audit_record_cmds=''    #设置需要监控的SQL命令,默认全部

audit_record_objs=‘db.*’    #设置需要监控的数据库名称和表名,默认全部 

audit_whitelist_users    #用户白名单

7. 最后为了保证重启数据库,配置不丢失,修改my.cnf 配置文件,将下面的配置添加到[mysqld]中,所以在配置文件中my.cnf加入参数:

audit_json_file=on    #保证mysql重启后自动启动插件

plugin-load=AUDIT=libaudit_plugin.so    #防止删除了插件,重启后又会加载

audit_record_cmds='insert,delete,update,create,drop,alter,grant,truncate'   #要记录哪些命令语句,因为默认记录所有操作;

8.插件卸

1
uninstall plugin audit
 
 

COME FROM:https://www.cnblogs.com/cangyuefeng/p/10031124.html

原文地址:https://www.cnblogs.com/seasonzone/p/14447493.html