zoukankan      html  css  js  c++  java
  • mysql添加mcafee 审计插件

    插件源码地址
    https://github.com/mcafee/mysql-audit
    插件安装方法
    https://github.com/mcafee/mysql-audit/wiki/Installation
    插件下载地址
    https://bintray.com/mcafee/mysql-audit-plugin/release/1.0.9-585

    1、查看mysql插件存放目录
    mysql> SHOW GLOBAL VARIABLES LIKE 'plugin_dir';
    +---------------+-----------------------------------+
    | Variable_name | Value |
    +---------------+-----------------------------------+
    | plugin_dir | /usr/local/mysql/lib/plugin/ |
    +---------------+-----------------------------------+
    1 row in set (0.01 sec)

    2、复制libaudit_plugin.so 至 mysql插件目录
    mv libaudit_plugin.so /usr/local/mysql/lib/plugin/
    chmod a+x /usr/local/mysql/lib/plugin/*
    chown mysql:mysql /usr/local/mysql/lib/plugin/*

    3、安装插件
    初使使用在线安装,但是安装失败
    mysql> INSTALL PLUGIN AUDIT SONAME 'libaudit_plugin.so';
    ERROR 1524 (HY000): Plugin 'AUDIT' is not loaded

    然后使用修改配置,然后重启数据库,官方推荐使用修改配置方式安装。
    Note: On production systems, McAfee recommends using the plugin-load option for installing the audit plugin.


    修改my.cnf文件,添加加载审计插件代码
    plugin-load=AUDIT=libaudit_plugin.so
    audit_json_file=on
    audit_force_record_logins=on
    audit_json_file_sync=1

    重启数据库
    /etc/init.d/mysql.server restart

    4、查看插件状态
    mysql> show plugins;
    +----------------------------+----------+--------------------+--------------------+---------+
    | Name | Status | Type | Library | License |
    +----------------------------+----------+--------------------+--------------------+---------+
    | binlog | ACTIVE | STORAGE ENGINE | NULL | GPL |
    | mysql_native_password | ACTIVE | AUTHENTICATION | NULL | GPL |
    | mysql_old_password | ACTIVE | AUTHENTICATION | NULL | GPL |
    | sha256_password | ACTIVE | AUTHENTICATION | NULL | GPL |
    | MEMORY | ACTIVE | STORAGE ENGINE | NULL | GPL |
    | CSV | ACTIVE | STORAGE ENGINE | NULL | GPL |
    | MRG_MYISAM | ACTIVE | STORAGE ENGINE | NULL | GPL |
    | MyISAM | ACTIVE | STORAGE ENGINE | NULL | GPL |
    | FEDERATED | DISABLED | STORAGE ENGINE | NULL | GPL |
    | PERFORMANCE_SCHEMA | ACTIVE | STORAGE ENGINE | NULL | GPL |
    | BLACKHOLE | ACTIVE | STORAGE ENGINE | NULL | GPL |
    | InnoDB | ACTIVE | STORAGE ENGINE | NULL | GPL |
    | INNODB_TRX | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
    | INNODB_LOCKS | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
    | INNODB_LOCK_WAITS | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
    | INNODB_CMP | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
    | INNODB_CMP_RESET | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
    | INNODB_CMPMEM | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
    | INNODB_CMPMEM_RESET | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
    | INNODB_CMP_PER_INDEX | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
    | INNODB_CMP_PER_INDEX_RESET | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
    | INNODB_BUFFER_PAGE | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
    | INNODB_BUFFER_PAGE_LRU | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
    | INNODB_BUFFER_POOL_STATS | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
    | INNODB_METRICS | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
    | INNODB_FT_DEFAULT_STOPWORD | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
    | INNODB_FT_DELETED | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
    | INNODB_FT_BEING_DELETED | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
    | INNODB_FT_CONFIG | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
    | INNODB_FT_INDEX_CACHE | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
    | INNODB_FT_INDEX_TABLE | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
    | INNODB_SYS_TABLES | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
    | INNODB_SYS_TABLESTATS | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
    | INNODB_SYS_INDEXES | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
    | INNODB_SYS_COLUMNS | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
    | INNODB_SYS_FIELDS | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
    | INNODB_SYS_FOREIGN | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
    | INNODB_SYS_FOREIGN_COLS | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
    | INNODB_SYS_TABLESPACES | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
    | INNODB_SYS_DATAFILES | ACTIVE | INFORMATION SCHEMA | NULL | GPL |
    | ARCHIVE | ACTIVE | STORAGE ENGINE | NULL | GPL |
    | partition | ACTIVE | STORAGE ENGINE | NULL | GPL |
    | AUDIT | ACTIVE | AUDIT | libaudit_plugin.so | GPL |
    +----------------------------+----------+--------------------+--------------------+---------+
    43 rows in set (0.00 sec)

    5、查看插件的配置参数
    mysql> show global VARIABLES like '%audit%';
    +---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | Variable_name | Value |
    +---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | audit_checksum | |
    | audit_delay_cmds | |
    | audit_delay_ms | 0 |
    | audit_force_record_logins | ON |
    | audit_header_msg | ON |
    | audit_json_file | ON |
    | audit_json_file_bufsize | 1 |
    | audit_json_file_flush | OFF |
    | audit_json_file_retry | 60 |
    | audit_json_file_sync | 1 |
    | audit_json_log_file | mysql-audit.json |
    | audit_json_socket | OFF |
    | audit_json_socket_name | /tmp/mysql.audit__data_mysql_3306_datadir_mysqldata_3306 |
    | audit_json_socket_retry | 10 |
    | audit_offsets | |
    | audit_offsets_by_version | ON |
    | audit_password_masking_cmds | CREATE_USER,GRANT,SET_OPTION,SLAVE_START,CREATE_SERVER,ALTER_SERVER,CHANGE_MASTER |
    | audit_password_masking_regex | identified(?:/*.*?*/|s)*?by(?:/*.*?*/|s)*?(?:password)?(?:/*.*?*/|s)*?['|"](?<psw>.*?)(?<!\)['|"]|password(?:/*.*?*/|s)*?((?:/*.*?*/|s)*?['|"](?<psw>.*?)(?<!\)['|"](?:/*.*?*/|s)*?)|password(?:/*.*?*/|s)*?(?:for(?:/*.*?*/|s)*?S+?)?(?:/*.*?*/|s)*?=(?:/*.*?*/|s)*?['|"](?<psw>.*?)(?<!\)['|"]|password(?:/*.*?*/|s)*?['|"](?<psw>.*?)(?<!\)['|"] |
    | audit_record_cmds | |
    | audit_record_objs | |
    | audit_uninstall_plugin | OFF |
    | audit_validate_checksum | ON |
    | audit_validate_offsets_extended | ON |
    | audit_whitelist_cmds | BEGIN,COMMIT |
    | audit_whitelist_users | |
    +---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    25 rows in set (0.01 sec)

    6、验证审计
    [root@VM_166_132 mysqldata]# tailf /data/mysql/mysql-audit.json
    {"msg-type":"activity","date":"1480659848340","thread-id":"4","query-id":"12","user":"root","priv_user":"root","host":"","ip":"127.0.0.1","cmd":"show_variables","objects":[{"db":"information_schema","name":"/tmp/#sql_6a75_0","obj_type":"TABLE"}],"query":"SHOW GLOBAL VARIABLES LIKE 'plugin_dir'"}
    {"msg-type":"activity","date":"1480659883722","thread-id":"4","query-id":"13","user":"root","priv_user":"root","host":"","ip":"127.0.0.1","cmd":"show_plugins","objects":[{"db":"information_schema","name":"/tmp/#sql_6a75_0","obj_type":"TABLE"}],"query":"show plugins"}

    7、关闭审计

    mysql> set GLOBAL audit_json_file=off ;
    Query OK, 0 rows affected (0.01 sec)

    8、禁用插件

    mysql> UNINSTALL PLUGIN AUDIT;
    ERROR 1148 (42000): Uninstall AUDIT plugin disabled

    在线禁用失败,采取修改配置文件,重启方式修改。

  • 相关阅读:
    mvc源码解读(2)mvc路由注册
    mvc源码解读(12)mvc四大过滤器之ActionFilter
    asp.net运行机制与页面生命周期
    mvc源码解读(5)Controller工厂的创建
    mvc源码解读(9)ActionDescriptor方法Action的描述对象
    mvc源码解析(7)创建Controller对象
    mvc源码解读(11)mvc四大过滤器之AuthorizationFilter
    mvc源码解读(19)mvc客户端+服务端验证
    get与post
    mvc源码解析(6)获取ControllerType
  • 原文地址:https://www.cnblogs.com/dbcloud/p/6126825.html
Copyright © 2011-2022 走看看