MariaDB日志审计功能——筑梦之路

MariaDB Audit Plugin和init-connect+binlog比较

(1) init-connect+binlog方案要求用户对日志表至少有insert权限,每添加一个新用户都要进行授权,显得比较麻烦;而MariaDB Audit Plugin默认会对所有用户进行行为审计,不需要对新添加的用户进行授权,MariaDB Audit Plugin还可以指定对哪些用户进行行为审计,哪些用户不需要进行行为审计;

(2) init-connect+binlog方案无法对具有super权限的用户进行行为审计,而MariaDB Audit Plugin可以对所有用户进行行为审计,包括具有super权限的用户;

(3) init-connect+binlog方案需要修改配置文件之后重启MySQL生效,而MariaDB Audit Plugin可以在线进行配置,无需重启服务生效;

(4) init-connect+binlog方案审计信息输出到binlog中,MariaDB Audit Plugin可以选择将审计信息输出到syslog或者自定义的路径。

mysql命令操作:(临时生效)

#查看插件位置
show variables like '%plugin%';

#安装插件
INSTALL PLUGIN server_audit SONAME 'server_audit.so';

#安装后检查
show global variables like '%audit%';

#开启命令
set global server_audit_logging=1;

#卸载
UNINSTALL PLUGIN server_audit;


配置项如下:(永久生效)
[mysqld]
#加载日志审计功能插件
plugin-load=server_audit.so
#打开日志审计功能
server_audit_logging=on
#开启日志轮转
server_audit_file_rotate_now=on
#指定审计日志路径
server_audit_file_path=/data/mysql/logs/server_audit.log
#需要记录的操作 不记录查询,只记录增删改 DDL操作
server_audit_events=query_ddl,query_dml  
#审计的用户对象 默认全部
server_audit_incl_users =test,user,root;
#单个日志大小(单位:字节),文件到达该大小后,会自动切换
server_audit_file_rotate_size=1073741824
#日志保存数量
server_audit_file_rotations=9
#防止插件被卸载
server_audit=FORCE_PLUS_PERMANENT
#审计日志写到syslog 可选
#server_audit_output_type=SYSLOG

检查验证:
show global status like '%server_audit%';

tail -n 50 -f /data/mysql/logs/server_audit.log

审计日志写到syslog
SET GLOBAL server_audit_output_type=SYSLOG;

#重启rsyslog服务
/etc/init.d/rsyslog restart

默认的审计日志都是记录在/var/log/message文件里,需优化
vim /etc/rsyslog.conf
在*.info;mail.none;authpriv.none;cron.none;local4.none     /var/log/messages的下面加一行
if $programname =='mysql-server_auditing' then      /data/mysql/logs/mariadb_audit_log

#重启
/etc/init.d/rsyslog restart

注意:
      审计日志在/var/log/messages写一遍,在/data/mysql/logs/mariadb_audit_log再写一遍,不是单单只写到mariadb_audit_log里面


--------------------------------------------------------------------------------------
卸载的步骤:

1、如果在数据库的配置文件中配置了server_audit相关的选项,需要先在配置文件里把这项配置项注释掉,再重启mariadb。

2、然后在客户端执行UNINSTALL PLUGIN server_audit;才能卸载掉这个插件。

3、卸载插件完成后,执行show variables like '%audit%';仍然能看到这个插件的可用参数,再次重启mariadb才行。


这项配置还是挺重要的,安装该插件并开启审计功能后,可以将对数据库的各种操作记录保存下来,以便追踪操作来源及具体操作
,在此做个记录!!!

参考资料:Introducing the MariaDB Audit Plugin | MariaDBicon-default.png?t=L9C2https://mariadb.com/resources/blog/introducing-the-mariadb-audit-plugin/

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值