MySQL8.0数据库审计

CentOS 7.6 安装 MySQL 8.0.28
数据库审计属于数据库安全范畴。

序号数据库安全
1数据库审计
2数据库防火墙
3数据库加密
4数据脱敏
5数据库漏洞扫描
6数据库安全运维

背景

  1. 主动安全防护:缩短攻击从发生到发现的时间。
  2. 法律刚需:日志存储至少180天。

插件

  1. 官方企业版
  2. Percona MySQL
  3. MariaDB审计插件
  4. McAfee审计插件(支持 MySQL 8.0)

McAfee审计插件

使用 sysbench 压测,开启审计后约有25%的性能损耗

下载路径

文档路径

安装

# 解压
unzip audit-plugin-mysql-8.0-1.1.12-999-linux-x86_64.zip

# 將插件拷贝到 MySQL 的 plugin 下
cp /root/audit-plugin-mysql-8.0-1.1.12-999/lib/libaudit_plugin.so /usr/lib64/mysql/plugin/
chown -R mysql.mysql /usr/lib64/mysql/plugin/libaudit_plugin.so
chmod +x /usr/lib64/mysql/plugin/libaudit_plugin.so

# 连接 MySQL,加载插件
mysql> INSTALL PLUGIN AUDIT SONAME 'libaudit_plugin.so';
Query OK, 0 rows affected (5.97 sec)

mysql> show global status like 'AUDIT_version';
+---------------+------------+
| Variable_name | Value      |
+---------------+------------+
| Audit_version | 1.1.12-999 |
+---------------+------------+
1 row in set (0.01 sec)

# 开启审计
mysql> set global audit_json_file=ON;
Query OK, 0 rows affected (0.00 sec)

mysql> show variables like 'audit_json_file';
+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| audit_json_file | ON    |
+-----------------+-------+
1 row in set (0.01 sec)

# 为了重启能生效,写入到 /etc/my.cnf 中
[mysqld]
audit_json_file=on
plugin-load=AUDIT=libaudit_plugin.so

默认会在 data_dir(/var/lib/mysql)路径下生成一个mysql-audit.json文件

切换日志

mv mysql-audit.json mysql-audit.json.`date +%F`
mysql -e 'set global audit_json_file_flush=on;'

追踪日志

tail -f -n 20 mysql-audit.json | gerp "关键词"
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

月牙坠

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值