本站所有文章均为原创,如对您有帮助,恳请帮忙点击任何一处广告

【MySQL运维】MySQL审计管理

发布:TangLu2020-2-10 12:32分类: MySQL 标签: mysql

一、MySQL审计的作用

审计功能可以对用户的操作进行记录,方便追溯一些问题,最常见的就是追查删库行为了。开启审计功能会降低一定的性能,这个需要自行取舍是要安全还是要性能。MySQL审计功能通常可以使用mysql-audit插件实现,该插件支持MySQL、Percona、Mariadb。除此之外还可以使用ELK或者MySQL自带的init-connect结合binlog进行审计。


二、mysql-audit安装与配置

1、mysql-audit源码存放在Github上(https://github.com/mcafee/mysql-audit),二进制包则是通过https://bintray.com/mcafee/mysql-audit-plugin/release进行下载,下载的时候需要注意版本是否支持当前的MySQL版本

audit.png


2、将安装包解压,获取libaudit_plugin.so插件文件和offset-extract.sh脚本


3、登陆MySQL查看插件存放路径

mysql > show global variables like '%plugin_dir%'


4、将so文件复制到上一步所查询出来的目录

cp lib/libaudit_plugin.so /usr/local/mysql/lib/mysql/plugin/


5、安装gdb环境,否则在执行offset-extract.sh脚本的时候会出现ERROR: gdb not found. Make sure gdb is installed and on the path的错误

yum install gdb -y


6、安装插件的两个方法(建议同时配置)

· 方法1——INSTALL PLUGIN在线安装,无需重启MySQL服务

mysql > INSTALL PLUGIN audit soname 'libaudit_plugin.so';
mysql > set global audit_json_file='ON';
mysql > set global audit_json_log_file='/data/mysql3311/log/mysql-audit.json';
mysql > set global audit_record_cmds='drop_db,drop_table,alter_table';  #仅审计DDL操作


· 方法2——plugin-load安装,服务重启后依然生效

vi /etc/my.cnf
[mysqld]
plugin-load=AUDIT=libaudit_plugin.so
audit_json_file=on  #打开审计
audit_json_log_file=/data/mysql/audit.json  #审计日志存放路径
# audit_record_cmds="insert,delete,update,create,drop,alter"  #需要审计的命令,不写的话所有记录都审计


7、检查插件是否安装成功,能看到版本就代表正常

show global status like 'AUDIT_version';
show variables like '%audit%';

温馨提示如有转载或引用以上内容之必要,敬请将本文链接作为出处标注,谢谢合作!
et_highlighter51
版权所有:《Linux运维技术学习站点
文章标题:《【MySQL运维】MySQL审计管理
除非注明,文章均为 《Linux运维技术学习站点》 原创
转载请注明本文短网址:http://www.linuxe.cn/post-557.html  [生成短网址]

已有 0/1099 人参与

发表评论:

欢迎分享Linux运维技术学习站点

欢迎使用手机扫描访问本站,还可以关注微信哦~