MySQL 使用 MariaDB 審計(jì)插件

轉(zhuǎn)自??https://mp.weixin.qq.com/s/vNcTb7IR_LpYlcZf_Y-aAA

Oracle 的 MySQL 社區(qū)版不帶審計(jì)插件(Audit Plugin),要想使用審計(jì)功能,你可以用企業(yè)版芬迄,不過(guò)這需要銀子。業(yè)界還有一些 GPL 協(xié)議的審計(jì)插件答捕,這里我們選擇 MariaDB 的審計(jì)插件时甚。

一、遷移并安裝

MariaDB 的 10.1 版本對(duì)應(yīng)與 Oracle 的 MySQL 5.7乞而,我們到它的官網(wǎng)上下載 Linux 的通用版本送悔,下載下來(lái)解壓大約 1.3G:

#ll-hmariadb-10.1.46-linux-x86_64.tar-rw-rw-r--1scutechscutech1.3GAug19 18:19mariadb-10.1.46-linux-x86_64.tar

我們找到需要的審計(jì)插件:

./mariadb-10.1.46-linux-x86_64/lib/plugin/server_audit.so

把這個(gè) so 結(jié)尾的文件拷貝到 MySQL 的插件目錄,例如:/usr/lib/mysql/plugin/ 爪模,使用下面的命令加載:

mysql>? install plugin server_audit SONAME'server_audit.so';

mysql> show plugins;

......

| SERVER_AUDIT? ? ? ? ? ? ? |ACTIVE| AUDIT? ? ? ? ? ? ? |server_audit.so| GPL? ? |

+----------------------------+----------+--------------------+----------------------+---------+

通過(guò) SHOW PLUGINS 可以看到 SERVER_AUDIT 是最后一個(gè) plugin欠啤。

二、配置

MariaDB 的審計(jì)插件的配置說(shuō)明參見(jiàn):https://mariadb.com/kb/en/mariadb-audit-plugin-configuration/

涉及到審計(jì)功能的參數(shù)如下:

mysql> show variables like'%audit%';

+-------------------------------+-----------------------+

| Variable_name? ? ? ? ? ? ? ? |Value|

+-------------------------------+-----------------------+

|server_audit_events? ? ? ?|? ? ? ? ? ? ? ? ? ? ? ? ? ? ?|

| server_audit_excl_users|? ? ? ? ? ? ? ? ? ? ? ? ? ? |

|server_audit_file_path? ? | server_audit.log? |

| server_audit_file_rotate_now? |OFF|

|server_audit_file_rotate_size| 1000000? ? ? ? |

| server_audit_file_rotations? |9? ? ? ? ? ? ? ? ? ? ? |

|server_audit_incl_users? ? ? |? ? ? ? ? ? ? ? ? ? ? |

| server_audit_loc_info? ? ? ? |? ? ? ? ? ? ? ? ? ? ? ?|

|server_audit_logging? ? ? ? ?| OFF? ? ? ? ? ? ? ? ? |

| server_audit_mode? ? ? ? ? ? |1? ? ? ? ? ? ? ? ? ? ? ? ?|

|server_audit_output_type| file? ? ? ? ? ? ? ? ? ? ? ?|

| server_audit_query_log_limit? |1024? ? ? ? ? ? ? |

|server_audit_syslog_facility| LOG_USER? ? ? ? ? ? ? |

| server_audit_syslog_ident? ? |mysql-server_auditing|

|server_audit_syslog_info|? ? ? ? ? ? ? ? ? ? ? |

| server_audit_syslog_priority? |LOG_INFO|

+-------------------------------+-----------------------+

16 rowsinset (0.00 sec)

這些參數(shù)值可以用 SET 語(yǔ)句進(jìn)行設(shè)置:

SETGLOBALserver_audit_logging=ON;SETglobalserver_audit_events='connect,query';

為了重新啟動(dòng)后也能生效屋灌,可以在 MySQL 的配置文件添加相應(yīng)的設(shè)置:

[server]... server_audit_logging=ONserver_audit_events=connect,query…

server_audit_logging 這參數(shù)默認(rèn)為 OFF洁段,把這個(gè)參數(shù)設(shè)置為 ON 才能啟動(dòng)審計(jì)功能。

server_audit_events 決定記錄的事件共郭,這里我們記錄 connect 和 query祠丝,也就是記錄用戶的連接和查詢語(yǔ)句。

三除嘹、審計(jì)記錄的文件和格式

使用下面的命令可以強(qiáng)制進(jìn)行審計(jì)文件的切換:

mysql>setglobalserver_audit_file_rotate_now =on;Query OK,0rowsaffected(0.00sec)

生成一個(gè)新的審計(jì)文件写半,文件名后面數(shù)字表示文件的序號(hào):

root@infokist:/var/lib/mysql# ll server_au*-rw-r-----1mysql mysql26163Aug2011:11server_audit.log-rw-r-----1mysql mysql326651Aug2011:09 server_audit.log.1

server_audit_file_rotate_size:決定每個(gè)審計(jì)記錄文件的大小,到這個(gè)閥值時(shí)自動(dòng)進(jìn)行審計(jì)記錄文件的切換尉咕。

server_audit_file_rotations:決定審計(jì)記錄文件的數(shù)量叠蝇,到這個(gè)閥值時(shí)會(huì)覆蓋第一個(gè)審計(jì)記錄文件,默認(rèn)為 9年缎。

server_audit_output_type:設(shè)置為 file 時(shí)悔捶,記錄成文件,默認(rèn)目錄是 MySQL 的 datadir 目錄单芜, 默認(rèn)文件名是 server_audit.log蜕该。當(dāng)設(shè)置為 syslog 時(shí),審計(jì)記錄會(huì)通過(guò)標(biāo)準(zhǔn) <syslog.h> API 發(fā)送給本地的 syslogd daemon缓溅。

審計(jì)記錄文件的格式是:

[timestamp],[serverhost],[username],[host],[connectionid],[queryid],[operation],[database],[object],[retcode]

一個(gè)對(duì)應(yīng)的例子如下:

20200820 11:04:04,infokist,superuser,localhost,23,4759,QUERY,ds_db,'selectcount(*)fromvm_zfs_storage',0

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末蛇损,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子坛怪,更是在濱河造成了極大的恐慌淤齐,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,496評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件袜匿,死亡現(xiàn)場(chǎng)離奇詭異更啄,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)居灯,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,407評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門祭务,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)内狗,“玉大人,你說(shuō)我怎么就攤上這事义锥×常” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 162,632評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵拌倍,是天一觀的道長(zhǎng)赂鲤。 經(jīng)常有香客問(wèn)我,道長(zhǎng)柱恤,這世上最難降的妖魔是什么数初? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,180評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮梗顺,結(jié)果婚禮上泡孩,老公的妹妹穿的比我還像新娘。我一直安慰自己寺谤,他們只是感情好仑鸥,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,198評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著变屁,像睡著了一般锈候。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上敞贡,一...
    開(kāi)封第一講書(shū)人閱讀 51,165評(píng)論 1 299
  • 那天,我揣著相機(jī)與錄音摄职,去河邊找鬼誊役。 笑死,一個(gè)胖子當(dāng)著我的面吹牛谷市,可吹牛的內(nèi)容都是我干的蛔垢。 我是一名探鬼主播,決...
    沈念sama閱讀 40,052評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼迫悠,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼鹏漆!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起创泄,我...
    開(kāi)封第一講書(shū)人閱讀 38,910評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤艺玲,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后鞠抑,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體饭聚,經(jīng)...
    沈念sama閱讀 45,324評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,542評(píng)論 2 332
  • 正文 我和宋清朗相戀三年搁拙,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了秒梳。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片法绵。...
    茶點(diǎn)故事閱讀 39,711評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖酪碘,靈堂內(nèi)的尸體忽然破棺而出朋譬,到底是詐尸還是另有隱情,我是刑警寧澤兴垦,帶...
    沈念sama閱讀 35,424評(píng)論 5 343
  • 正文 年R本政府宣布徙赢,位于F島的核電站,受9級(jí)特大地震影響滑进,放射性物質(zhì)發(fā)生泄漏犀忱。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,017評(píng)論 3 326
  • 文/蒙蒙 一扶关、第九天 我趴在偏房一處隱蔽的房頂上張望阴汇。 院中可真熱鬧,春花似錦节槐、人聲如沸搀庶。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,668評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)哥倔。三九已至,卻和暖如春揍庄,著一層夾襖步出監(jiān)牢的瞬間咆蒿,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,823評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工蚂子, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留沃测,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,722評(píng)論 2 368
  • 正文 我出身青樓食茎,卻偏偏與公主長(zhǎng)得像蒂破,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子别渔,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,611評(píng)論 2 353