栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

MySQL Audit Plugin Mcafee安装详解

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

MySQL Audit Plugin Mcafee安装详解

概述

MySQL社区版本没有官方的审计插件,可选择的只有MariaDB的审计插件和Mcafee.其中由于我们环境使用的MySQL8, 而MariaDB的审计插件不支持MySQL8,所以只有选择Mcafee.

建议 1: 如果是您的MySQL版本为5.7时,建议使用MariaDB的审计插件.


准备

Mcafeex需要关闭SElinux,可以参考文档,可以先临时关闭(不用重启服务器):

setenforce 0

在下载Mcafee之前,请使用下面的命令查看你的MySQL版本:

mysql -V

当前我的MySQL版本为:
mysql Ver 8.0.25 for Linux on x86_64 (MySQL Community Server - GPL)

确定MySQL版本非常重要,因为不同的版本需要选择对应版本的插件.

建议 2: 在生产环境中选择软件的版本非常重要: 第一要选择永久支持版本; 第二尽量不要使用最新版本,除非老版本无法满足你的需求.

确定了MySQL版本后,我们就可以选择Mcafee插件的版本了.首先查看Mcafee插件的所有版本,然后找到支持您MySQL的插件版本.例如,支持我们环境的插件版本为v1.1.9.然后在Assets 里(一般是折叠起来的,睁大眼睛!)找到满足你环境的zip包,服务器一般是linux-x86_64,我选择的是audit-plugin-mysql-8.0-1.1.9-974-linux-x86_64.zip.在linux上可以直接下载:

wget https://github.com/mcafee-enterprise/mysql-audit/releases/download/v1.1.9/audit-plugin-mysql-8.0-1.1.9-974-linux-x86_64.zip

然后, 直接使用命令解压缩:

unzip audit-plugin-mysql-8.0-1.1.9-974-linux-x86_64.zip

安装

准备好环境后,然后就可以安装审计插件了.安装步骤也可以参考官方文档.安装步骤如下:

查找MySQL插件目录

首先, 登录您的MySQL:

mysql -uroot -p

然后,在MySQL中查询插件目录:

show global variables like 'plugin_dir';

默认MySQL的插件目录为/usr/lib64/mysql/plugin/

将插件文件移动到插件目录

接着, 将zip包中lib目录下的libaudit_plugin.so移动到插件目录:

cp audit-plugin-mysql-8.0-1.1.9-974-linux-x86_64/lib/libaudit_plugin.so /usr/lib64/mysql/plugin/ 
将插件文件修改为可执行文件

将文件移动到插件目录后,需要使用shell命令将文件修改为可执行文件:

chmod a+x /usr/lib64/mysql/plugin/libaudit_plugin.so
加载插件

加载插件有两种方式,第一种方式是使用SQL语句直接加载:

INSTALL PLUGIN AUDIT SONAME 'libaudit_plugin.so';

第二种方式是使用plugin-load,即在my.cnf文件中的[mysqld]下添加:

plugin-load=AUDIT=libaudit_plugin.so 

官方建议生产环境中使用第二种方式.
另外, 第二种方式在my.cnf文件中添加配置后需要重启.另外,Mcafee插件支持其它配置参数可以一并放到my.cnf中:

plugin-load=AUDIT=libaudit_plugin.so
audit_json_file=on
audit_force_record_logins=on
audit_json_file_sync=1
验证

经过上面的步骤,我们的插件是否安装成功了呢?是骡子是马,拉出来溜溜.在MySQL中执行下面SQL语句:

show plugins;
show global status like 'AUDIT_version';

如果上面两个命令正常输出,那恭喜您,插件安装成功.

接下来,需要手动打开插件:

SET GLOBAL audit_json_file=on;

最后就可以查看MySQL data目录下的日志文件了,当然你可能不知道你的data目录在哪里,那么可以通过下面的SQL查看data目录:

SHOW VARIABLES WHERe Variable_Name = 'datadir'

然后可以查看审计日志文件,审计文件默认名字为mysql-audit.json,审计文件为JSON格式的数据,你可以查看一下是否正确记录了你所有的操作.

Bugfix

完成了上面的步骤如果仍然没有安装成功,大家不要灰心,征途才刚刚开始.

如果在验证时没有发现audit插件或者报错,大家一定要从头开始,第一个要确认的是你的插件版本是支持你的MySQL版本的,如果不支持那本文章也无法为你解决.

如果插件支持你的版本,那么我们可以解决那些可能的问题,首先可以参考官方Issues,如果你的问题刚好和能在Issues里面找到,这可以直接按照解决方法解决问题.

遇到插件加载问题时,mysql命令行里面输出的错误日志并不完整,我们可以查看mysql日志文件的error信息.我们可以通过下面的SQL语句查看mysql的错误日志位置:

show variables like 'log_error';

然后可以看到插件加载的详细日志.例如,我遇到的问题如下:
Audit Plugin: unable to protect page and nx bit enabled. This may happen if you have SELinux enabled. Disable SELinux execmod protection for mysqld. Page: 0x7f762972c000, Size: 4096

明显是Linux安全问题,即需要我们关闭SELinux,关闭后,我们可以重启MySQL然后重新加载或者验证发现当前问题已经解决.

建议 3: 大家遇到问题后,一定要先查看官方文档,查看是否配置出错,或者官方是否有相关的Issue, 如果还是无法解决,可以加入官方的讨论组,或者直接创建Issue,然后寻求找到解决方案

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/988928.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号