一、介紹MySQL AUDIT
創(chuàng)新互聯(lián)建站主要從事成都網(wǎng)站建設(shè)、成都網(wǎng)站制作、網(wǎng)頁設(shè)計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務。立足成都服務桃城,十余年網(wǎng)站建設(shè)經(jīng)驗,價格優(yōu)惠、服務專業(yè),歡迎來電咨詢建站服務:028-86922220
MySQL AUDIT Plugin是一個?MySQL安全審計插件,由McAfee提供,設(shè)計強調(diào)安全性和審計能力。該插件可用作獨立審計解決方案,或配置為數(shù)據(jù)傳送給外部監(jiān)測工具。支持版本為MySQL (5.1, 5.5, 5.6, 5.7),MariaDB (5.5, 10.0, 10.1) ,Platform?(32 or 64 bit)。從Mariadb 10.0版本開始audit插件直接內(nèi)嵌了,名稱為server_audit.so,可以直接加載使用。
二進制文件地址:
macfee的mysql audit插件雖然日志信息比較大,對性能影響大,但是如果想要開啟審計,請斟酌。
二、安裝使用MySQL AUDIT
# unzip audit-plugin-mysql-5.6-1.1.5-774-linux-x86_64.zip
MySQL的插件目錄為:
mysql show global variables like 'plugin_dir';
+---------------+------------------------+
| Variable_name | Value? ? ? ? ? ? ? ? ? |
+---------------+------------------------+
| plugin_dir? ? | /app/mysql/lib/plugin/ |
+---------------+------------------------+
1 row in set (0.00 sec)
復制庫文件到MySQL庫目錄下
# cp audit-plugin-mysql-5.6-1.1.2-694/lib/libaudit_plugin.so /app/mysql/lib/plugin/
# chmod a+x /app/mysql/lib/plugin/libaudit_plugin.so
加載Audit插件
mysql INSTALL PLUGIN AUDIT SONAME 'libaudit_plugin.so';
查看版本
mysql show global status like '%audit%';
+------------------------+-----------+
| Variable_name? ? ? ? ? | Value? ? |
+------------------------+-----------+
| Audit_protocol_version | 1.0? ? ? |
| Audit_version? ? ? ? ? | 1.1.2-694 |
+------------------------+-----------+
2 rows in set (0.00 sec)
開啟Audit功能
mysql SET GLOBAL audit_json_file=ON;
Query OK, 0 rows affected (0.00 sec)
執(zhí)行任何語句(默認會記錄任何語句),然后去mysql數(shù)據(jù)目錄查看mysql-audit.json文件(默認為該文件)。
當然,我們還可以通過命令查看audit相關(guān)的命令。
mysql SHOW GLOBAL VARIABLES LIKE '%audit%';
其中我們需要關(guān)注的參數(shù)有:
1、audit_json_file
是否開啟audit功能。
2、audit_json_log_file
記錄文件的路徑和名稱信息。
3、audit_record_cmds
audit記錄的命令,默認為記錄所有命令??梢栽O(shè)置為任意dml、dcl、ddl的組合。如:audit_record_cmds=select,insert,delete,update。還可以在線設(shè)置set global audit_record_cmds=NULL。(表示記錄所有命令)
4、 audit_record_objs
audit記錄操作的對象,默認為記錄所有對象,可以用SET GLOBAL audit_record_objs=NULL設(shè)置為默認。也可以指定為下面的格式:audit_record_objs=,test.*,mysql.*,information_schema.*。
5、audit_whitelist_users
用戶白名單。
三、查看審計數(shù)據(jù)
插入一些數(shù)據(jù),查看一下mysql-audit.json文件信息(json格式),如下:
$ cat /app/mysql/data/mysql-audit.json
{"msg-type":"activity","date":"1517989674556","thread-id":"3","query-id":"39","user":"root","priv_user":"root","ip":"","host":"localhost","connect_attrs":{"_os":"Linux","_client_name":"libmysql","_pid":"1331209","_client_version":"5.6.27","_platform":"x86_64","program_name":"mysql"},"pid":"3472328296227680304","os_user":"0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","appname":"0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","rows":"10","cmd":"select","objects":[{"db":"sbtest","name":"sbtest1","obj_type":"TABLE"}],"query":"select * from sbtest1 limit 10"}
審計記錄文件一般存放在mysql的數(shù)據(jù)目錄下。
Navicat for MySQL 安裝軟件和破解補丁免費下載
鏈接:
提取碼:ultn ?
Navicat for MySQL是一套管理和開發(fā)MySQL或MariaDB的理想解決方案,支持單一程序,可同時連接到MySQL和MariaDB。這個功能齊備的前端軟件為數(shù)據(jù)庫管理、開發(fā)和維護提供了直觀而強大的圖形界面,給MySQL或MariaDB新手以及專業(yè)人士提供了一組全面的工具。
1,可以用show engines 或者 show plugins命令查看當前安裝的引擎或者插件情況。
2,查看一下當前mysql安裝是否支持動態(tài)添加插件。
注意,若have_dynamic_loading 選項的value是YES,則說明支持。如果是NO,則必須麻煩,因為have_dynamic_loading是只讀變量。
3,添加插件
首先確認一下插件的dll或者so的所在目錄,偶安裝在windows環(huán)境,dll所在目錄是:${MYSQLHOME}/lib/plugin/ha_innodb_plugin.dll。
執(zhí)行如下命令:
mysqlinstall plugin innodb dllname 'ha_innodb_plugin.dll';
mysqlinstall plugin innodb_trx soname 'ha_innodb_plugin.dll';
mysqlinstall plugin innodb_locks soname 'ha_innodb_plugin.dll';
mysqlinstall plugin innodb_lock_waits soname 'ha_innodb_plugin.dll';
mysqlinstall plugin innodb_cmp soname 'ha_innodb_plugin.dll';
mysqlinstall plugin innodb_cmp_reset soname 'ha_innodb_plugin.dll';
mysqlinstall plugin innodb_cmpmem soname 'ha_innodb_plugin.dll';
mysqlinstall plugin innodb_cmpmem_reset soname 'ha_innodb_plugin.dll';
4,檢測插件安裝是否成功,可以執(zhí)行:show plugins命令或者show engines;