安装MySQL审计插件

背景

鉴于目前MySQL审计需求不断深入扩张,以提高数据资产的安全,使得数据库愈来愈规范化管理,数据库实现审计功能成为必要安全环节。MySQL社区版是不带审计插件的(Audit Plugin)

MariaDB开发的MariaDB审计插件,虽然具有一些仅适用于MariaDB的独特功能,但它也可以与MySQL一起使用。MariaDB审计插件所生成的审计日志记录内容包括:用户名和主机、执行了哪些查询、访问了哪些表以及更改了服务器变量等详情信息

实现步骤

1、获取MariaDB的审计插件 - server_audit.so

下载MariaDB Server安装包

##下载地址:https://mariadb.org/download/?t=mariadb&p=mariadb&r=10.3.17&os=Linux&cpu=x86_64&i=systemd&m=bkns

##本地解压后,在解压目录下找到审计插件`server_audit.so`

2、将审计插件 server_audit.so复制到MySQL的plugin目录下,并授权

cp server_audit.so /usr/lib64/mysql/plugin/

cd /usr/lib64/mysql/plugin

chown -R mysql:mysql server_audit.so

chmod 755 server_audit.so

3、进入MySQL客户端,安装插件

安装命令

INSTALL PLUGIN server_audit SONAME 'server_audit.so';

 

4、配置说明

当安装完审计插件之后,MySQL中将有一些新的全局变量出现。这些变量就是用于配置审计日志的,例如配置审计日志的位置、日志大小、记录的信息格式等。

查看相关变量

show variables like '%server_audit%';

5、开启审计功能

mysql> SET GLOBAL server_audit_logging=ON;

(可更改记录信息,可不用)

##指定记录内容‘connect,query’,记录用户的连接和查询语句

SET global server_audit_events='connect,query';

##重命名审计日志

mysql> set global server_audit_file_path='mysql_3306_audit.log';

6、审计日志结果

日志的文件在MySQL的data目录下,里面的内容特别多,可以使用tail命令监控,可用grep、sed、awk去查看自己想要的内容

日志的文件名可有自己定,修改在“重命名审计日志”,默认的文件名server_audit.log

head /var/lib/mysql/server_audit.log

 

Docker容器实现步骤

1、上传server_audit.so到容器

先上传至服务器,给755权限

chmod +755 server_audit.so

复制到容器

docker ps |grep mysql

 

 

docker cp server_audit.so a5ad0923ec2c:/usr/lib/mysql/plugin/

去容器中查看是否传入

 

2、进入MySQL客户端,安装插件

安装命令

INSTALL PLUGIN server_audit SONAME 'server_audit.so';

查看参数

show variables like '%server_audit%';

3、开启审计功能

mysql> SET GLOBAL server_audit_logging=ON;

4、查看审计日志结果

日志的文件在MySQL的data目录下,容器的目录是/var/lib/mysql/,可在服务器的映射目录中查看,默认的文件名server_audit.log

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值