久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

如何理解MySQL服務(wù)器安全

共計(jì) 4335 個(gè)字符,預(yù)計(jì)需要花費(fèi) 11 分鐘才能閱讀完成。

這篇文章主要講解了“如何理解 MySQL 服務(wù)器安全”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著丸趣 TV 小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“如何理解 MySQL 服務(wù)器安全”吧!

MySQL 服務(wù)器安全

對(duì)于自建機(jī)房的 MySQL 服務(wù)器安裝都會(huì)經(jīng)歷網(wǎng)絡(luò)配置,存儲(chǔ)規(guī)劃,安裝服務(wù)器以,安裝 MySQL。

存儲(chǔ)安全

自建 MySQL 服務(wù)器

對(duì)于自建 MySQL 服務(wù)器來(lái)說(shuō),為了磁盤不出現(xiàn)單點(diǎn)故障,一般都會(huì)使用 RAID 磁盤冗余陣列的方式。

有兩種模式:硬件 RAID 和軟件 RAID,硬件 RAID 需要購(gòu)買 RAID 卡支撐,軟件 RAID 通過(guò)軟件包 mdadm 生成即可,生產(chǎn)環(huán)境建議選擇硬件 RAID,一般需要對(duì)多塊盤先做 RAID,對(duì)于數(shù)據(jù)庫(kù)服務(wù)器來(lái)說(shuō),通常選擇 RAID10(也稱為 RAID  1 + 0,先進(jìn)行鏡像 RAID1,再進(jìn)行條帶化 RAID0 存儲(chǔ)),讀寫性能都比較好。

在實(shí)際的生產(chǎn)環(huán)境,一般都會(huì)有 8 塊盤,每塊盤 800G,在服務(wù)器啟動(dòng)的時(shí)候,先做磁盤 RAID 劃分,通常劃分兩個(gè)卷組(volume  group),一個(gè)是操作系統(tǒng)內(nèi)置目錄使用 rootvg,一個(gè)就是 MySQL 的數(shù)據(jù)相關(guān)的卷組 datavg,LVM 操作主要的步驟如圖:

通過(guò)以上的存儲(chǔ)劃分及配置 RAID10,MySQL 產(chǎn)生的數(shù)據(jù)都會(huì)寫到 /data 目錄下,同步到邏輯卷 lvdata 中,進(jìn)而同步到物理卷中,最終同步到物理磁盤中鏡像存儲(chǔ),有效避免了單盤損壞導(dǎo)致的數(shù)據(jù)不可用。

公有云 RDS

對(duì)于 RDS 來(lái)說(shuō),線上環(huán)境一般都選擇高可用版,即一主一從模式,默認(rèn)情況下 Slave 只做 failover(故障切換),主要是由于 Master 和 Slave 服務(wù)器的磁盤沒(méi)有做 RAID。

網(wǎng)絡(luò)安全

設(shè)置白名單

對(duì)于自建機(jī)房,一般都會(huì)使用硬件防火墻來(lái)做網(wǎng)絡(luò)隔離以及 IP 白名單限制,只允許指定的應(yīng)用服務(wù)器通過(guò) 3306 端口連接 MySQL  Server,其他的惡意請(qǐng)求應(yīng)該在防火墻層面進(jìn)行攔截,例如 RDS 控制臺(tái)的數(shù)據(jù)安全可以添加指定 IP。

外網(wǎng)訪問(wèn)

數(shù)據(jù)庫(kù)服務(wù)器只需要內(nèi)網(wǎng)訪問(wèn),禁止開通外網(wǎng)地址或者公網(wǎng)地址。

操作系統(tǒng)安全

安裝完操作系統(tǒng) (例如 CentOS 7.4) 后,要進(jìn)行安全漏洞掃描及定期巡檢,主要有以下幾個(gè)方面需要注意:

root 啟動(dòng) MySQL

MySQL  Server 安裝完之后,如果用 root 啟動(dòng) MySQL,則任何具有 FILE 系統(tǒng)權(quán)限的用戶都可以讀寫 root 用戶下的文件,會(huì)造成嚴(yán)重的安全隱患,應(yīng)該將軟件目錄屬主設(shè)置成 root 用戶,數(shù)據(jù)目錄屬主設(shè)置成 mysql 用戶,使用 mysql 用戶啟動(dòng) MySQL 實(shí)例。

賬號(hào)弱密碼

Linux 服務(wù)器的所有賬號(hào)密碼不能是弱密碼(例如密碼是純數(shù)字,純字母,賬號(hào)的一部分等,長(zhǎng)度太短),建議所有的賬號(hào)都設(shè)置 20 位長(zhǎng)度,包括數(shù)字,大寫字母,小寫字母以及特殊字符。

對(duì)外開放端口

對(duì)于 MySQL 數(shù)據(jù)庫(kù)服務(wù)器,除了 3306 端口開發(fā)給指定的應(yīng)用服務(wù)器訪問(wèn)外,其他的端口都應(yīng)該禁用掉,例如 ssh,ftp,telent 服務(wù)端口。

服務(wù)漏洞

在用綠盟或者其他工具進(jìn)行安全掃描時(shí),都會(huì)發(fā)現(xiàn)一些系統(tǒng)漏洞,常見的有 ntp 漏洞,vsftpd 的漏洞等。這時(shí)就需要停機(jī)去打 patch 修復(fù),再次進(jìn)行掃描,直到全部通過(guò)才能安裝 MySQL。

密碼登錄

對(duì)于生產(chǎn)服務(wù)器,嚴(yán)禁本地通過(guò)密碼直接登錄,建議采用跳板機(jī) jumpserver 的方式,每個(gè)用戶都用自己 jumpserver   賬號(hào)去登錄,然后選擇自己要訪問(wèn)的服務(wù)器 (需要提前告知管理員添加),默認(rèn)的登錄用戶(例如 server 用戶) 只有只讀權(quán)限,不能做任何修改操作。

審計(jì)功能

用戶通過(guò) jumpserver 登錄到生產(chǎn)服務(wù)器的所有操作都應(yīng)該被審計(jì)和錄屏,并且定時(shí)回放這些操作,確認(rèn)每一步都是最優(yōu)的,沒(méi)有不必要的多操作。

操作命令歷史

用戶登錄到 Linux 服務(wù)器上的所有操作命令都會(huì)記錄到 history 中,將 history 設(shè)置大一點(diǎn),保存更多的操作命令記錄。

資源限制

通過(guò)配置 /etc/security/limits.conf 文件限制用戶資源使用,例如打開進(jìn)程數(shù),文件數(shù),文件大小及內(nèi)存等。

服務(wù)器備份

定期的對(duì)服務(wù)器進(jìn)行備份,備份內(nèi)容主要包括 Linux 內(nèi)置目錄 (/usr /var  /lib) 和 MySQL 數(shù)據(jù)目錄(數(shù)據(jù)文件,binlog,undolog,redolog),同時(shí)要定期檢查備份的有效性以及恢復(fù)演練,以下是阿里云 ECS   的快照,建議每天一個(gè)快照,保留 7 天。

如何理解 MySQL 服務(wù)器安全

MySQL 數(shù)據(jù)庫(kù)安全

賬號(hào)安全

如何理解 MySQL 服務(wù)器安全

賬號(hào)密碼

建議所有的賬號(hào)都設(shè)置 20 位長(zhǎng)度,包括數(shù)字,大寫字母,小寫字母以及特殊字符,如 ^N9UxOR ydQWCBvIwqql

賬號(hào)分離

對(duì)于分布式系統(tǒng)來(lái)說(shuō),會(huì)有多個(gè)服務(wù),且服務(wù)之間存在調(diào)用關(guān)系,比如交易 trade-service 會(huì)調(diào)用支付 payment-service。

為了安全起見,給每個(gè)服務(wù)創(chuàng)建一個(gè)數(shù)據(jù)庫(kù),同時(shí)分配自己的賬號(hào),禁止跨庫(kù)訪問(wèn)。

如何理解 MySQL 服務(wù)器安全

賬號(hào)權(quán)限

保證賬號(hào)權(quán)限最小化原則,對(duì)于業(yè)務(wù)賬號(hào)來(lái)說(shuō),只需要授予連接,查詢,新增,修改的權(quán)限即可。

使用 SSL 連接

對(duì)于數(shù)據(jù)安全性要求比較高的業(yè)務(wù),建議啟用 SSL 連接,這樣即使用抓包工具分析,也不能看到具體的 SQL 文本。但從 SSL 實(shí)現(xiàn)方式來(lái)看,建立連接時(shí)需要進(jìn)行握手、加密、解密等操作,連接建立階段比較耗時(shí),如果使用連接池或者長(zhǎng)連接不會(huì)有太大影響,如果是短連接性能損耗比較大。

系統(tǒng)權(quán)限

mysql.user 權(quán)限

除了 MySQL root 賬號(hào)之外,其他任何賬號(hào)對(duì) mysql.user 的表有修改權(quán)限,會(huì)帶來(lái)安全風(fēng)險(xiǎn):賬號(hào)密碼被修改和認(rèn)證插件修改。

修改賬號(hào)密碼

如何理解 MySQL 服務(wù)器安全

修改密碼認(rèn)證方式

MySQL 默認(rèn)都是本地密碼認(rèn)證插件  mysql_native_password,如果改成 auth_socket,則不需要密碼,只檢查用戶是否使用 UNIX 套接字進(jìn)行連接,然后比較用戶名即可。

如何理解 MySQL 服務(wù)器安全

權(quán)限風(fēng)險(xiǎn)

一般允許普通開發(fā)人員通過(guò) jumpserver 登錄到中轉(zhuǎn)機(jī),然后用 mysql -h -u  - p 以只讀賬號(hào)的方式訪問(wèn)數(shù)據(jù)庫(kù),有時(shí)也想看一下 information_schema 下長(zhǎng)事務(wù) (innodb_trx) 等相關(guān)的信息,需要授予 process 系統(tǒng)管理權(quán)限,會(huì)帶來(lái)一些安全隱患。

如何理解 MySQL 服務(wù)器安全

這樣只讀賬號(hào)也能查看 innodb_trx 表中所有業(yè)務(wù)賬號(hào)正在執(zhí)行的 SQL 語(yǔ)句,SQL 可能包含敏感信息。

如何理解 MySQL 服務(wù)器安全

在以前的 MySQL 版本,擁有 process 系統(tǒng)權(quán)限的用戶還可以鎖定系統(tǒng)表,比如 lock table mysql.user  read,導(dǎo)致正常修改用戶的操作

FILE 權(quán)限

具有 FILE 權(quán)限可以將數(shù)據(jù)通過(guò) SELECT hellip;..INTO OUTFILE hellip;.. 寫到服務(wù)器上有寫權(quán)限的目錄下,作為文本格式存放,也可以通過(guò) LOAD DATA  INFILE hellip; 將文本文件數(shù)據(jù)導(dǎo)入到數(shù)據(jù)表中。

如何理解 MySQL 服務(wù)器安全

審計(jì)功能

安裝 MySQL Server 之后,應(yīng)該配置和開啟 Audit Plugin,這樣經(jīng)過(guò) MySQL Server 執(zhí)行所有的 SQL   都會(huì)被記錄下來(lái),一方面可以排除問(wèn)題,另一方面可以做性能監(jiān)控分析(例如一段時(shí)間內(nèi)某個(gè) SQL 的 QPS,TPS)。

數(shù)據(jù)備份

需要定時(shí)備份數(shù)據(jù)文件和 binlog,對(duì)于自建 MySQL   服務(wù)器,可以使用 xtrabackup 去做每天的物理全備,對(duì)于 RDS 來(lái)說(shuō),需要配置備份策略,同時(shí)也要定期的檢查的備份完整性和有效性。

如何理解 MySQL 服務(wù)器安全

異地容災(zāi)

對(duì)于核心的業(yè)務(wù)系統(tǒng),比如交易,支付等,要做好數(shù)據(jù)庫(kù)的異地容災(zāi),避免由于地震等自然災(zāi)害造成數(shù)據(jù)不可恢復(fù)。

如何理解 MySQL 服務(wù)器安全

數(shù)據(jù)安全

數(shù)據(jù)是企業(yè)寶貴的資源,每個(gè)業(yè)務(wù)域產(chǎn)生的數(shù)據(jù)以及需要的數(shù)據(jù)都不一樣,如何保證安全的訪問(wèn)數(shù)據(jù)是非常重要的,一般大公司都有自己的數(shù)據(jù)管理平臺(tái),比如阿里的 iDB,現(xiàn)在已經(jīng)是一個(gè)服務(wù) DMS(數(shù)據(jù)管理服務(wù)),可以管理各種類型的數(shù)據(jù)庫(kù)。

數(shù)據(jù)訪問(wèn)范化

所有數(shù)據(jù)變更都應(yīng)該走審批流程,發(fā)起人和審批人不能是同一個(gè),重要敏感的數(shù)據(jù)操作需要提交工單,進(jìn)行多級(jí)審批,確認(rèn)沒(méi)有問(wèn)題才能執(zhí)行,執(zhí)行之前要先做好備份,以便回滾時(shí)使用。

建議使用數(shù)據(jù)庫(kù)管理平臺(tái)來(lái)管理數(shù)據(jù)庫(kù),一般需要用戶注冊(cè)賬號(hào),申請(qǐng)權(quán)限(數(shù)據(jù)導(dǎo)出,結(jié)構(gòu)變更,數(shù)據(jù)變更),服務(wù) Owner 審批,提交工單進(jìn)入審批流程等操作,所有的操作環(huán)節(jié)都會(huì)記錄操作日志。

如何理解 MySQL 服務(wù)器安全

數(shù)據(jù)脫敏

對(duì)核心業(yè)務(wù)表的敏感字段要進(jìn)行脫敏處理,例如姓名,郵箱,電話號(hào)碼,身份證號(hào)碼,可以利用中間平臺(tái)去處理,例如阿里云的 DMS 可以配置數(shù)據(jù)脫敏,支持?jǐn)?shù)據(jù)庫(kù),表,字段三個(gè)級(jí)別,默認(rèn)在平臺(tái)上查詢都是以 * 號(hào)顯示,如果想要查看明文,需要申請(qǐng)敏感數(shù)據(jù)權(quán)限,并提交工單,審批通過(guò)后才可以查看,權(quán)限時(shí)間默認(rèn)為一天,最長(zhǎng)不超過(guò) 7 天。

在做營(yíng)銷活動(dòng)之前,都會(huì)做數(shù)據(jù)庫(kù)性能壓測(cè),需要把 PROD 數(shù)據(jù)庫(kù)全量導(dǎo)入 UAT 環(huán)境,會(huì)涉及一些敏感數(shù)據(jù),一般需要通過(guò)中間層做脫敏處理,例如手機(jī)號(hào)可以前 3 位后 3 位進(jìn)行打碼處理,15222210123 脫敏成 152****123。

如何理解 MySQL 服務(wù)器安全

數(shù)據(jù)加密

從 MySQL  5.7 開始,InnoDB 支持對(duì)獨(dú)立表空間靜態(tài)數(shù)據(jù)加密,是引擎內(nèi)部數(shù)據(jù)頁(yè)級(jí)別的加密手段,當(dāng)數(shù)據(jù)頁(yè)寫入文件系統(tǒng)時(shí)加進(jìn)行加密,從數(shù)據(jù)文件讀到內(nèi)存中時(shí)解密,基于旋轉(zhuǎn)秘鑰文件而起作用,對(duì)于數(shù)據(jù)保護(hù)非常有用。

如何理解 MySQL 服務(wù)器安全

主秘鑰文件存儲(chǔ)在磁盤上,同時(shí)要做好備份,對(duì)于加密的表,表空間秘鑰由主秘鑰并存儲(chǔ)在表空間文件的頭部中,使用的加密算法是 AES,加密模式是塊加密。

我們來(lái)看一下 ** 加密 ENCRYPTION= Y 和未加密 ENCRYPTION= N ** 的區(qū)別在哪

如何理解 MySQL 服務(wù)器安全

如何理解 MySQL 服務(wù)器安全

從這里就可以看出,通過(guò) Keyring 的加密方式,主秘鑰是存儲(chǔ)表空間文件的頭部信息中,這樣增強(qiáng)了數(shù)據(jù)文件的安全性,對(duì)于一些社交軟件產(chǎn)生的聊天消息,可以采用這種方式來(lái)加密數(shù)據(jù)文件,防止數(shù)據(jù)文件被竊取之后進(jìn)行恢復(fù)。

延遲從庫(kù)

如何理解 MySQL 服務(wù)器安全

Oracle 數(shù)據(jù)庫(kù)有兩個(gè)特性:回收站 (recyclebin) 和閃回 (flashback) 功能,drop  table 如果不加 purge 選項(xiàng),Oracle 會(huì)把這個(gè)表 rename 一個(gè)新的表名存放到回收站里,需要還原時(shí)執(zhí)行 flashback table 即可。

那如果 delete 能恢復(fù)嗎?

也是可以的,利用 flashback query 去 Undo  Log 里獲取刪除時(shí)間前的數(shù)據(jù),回插到原表即可,這兩個(gè)功能是很棒的,可惜 MySQL 里都沒(méi)有。

通常 MySQL 的主從復(fù)制是實(shí)時(shí)的一致性復(fù)制,Master 執(zhí)行的變更會(huì)立刻通過(guò) binlog 復(fù)制同步到 Slave 執(zhí)行。

如果不想讓 Slave 那么快的執(zhí)行 Master 的變更,可以配置延遲從庫(kù),利用它可以實(shí)現(xiàn)數(shù)據(jù)誤刪的快速恢復(fù),例如延遲一個(gè)小時(shí)。

如何理解 MySQL 服務(wù)器安全

感謝各位的閱讀,以上就是“如何理解 MySQL 服務(wù)器安全”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)如何理解 MySQL 服務(wù)器安全這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是丸趣 TV,丸趣 TV 小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

正文完
 
丸趣
版權(quán)聲明:本站原創(chuàng)文章,由 丸趣 2023-07-27發(fā)表,共計(jì)4335字。
轉(zhuǎn)載說(shuō)明:除特殊說(shuō)明外本站除技術(shù)相關(guān)以外文章皆由網(wǎng)絡(luò)搜集發(fā)布,轉(zhuǎn)載請(qǐng)注明出處。
評(píng)論(沒(méi)有評(píng)論)
主站蜘蛛池模板: 石景山区| 库尔勒市| 安庆市| 凤山县| 安新县| 铁岭市| 图片| 泸州市| 英吉沙县| 诏安县| 唐海县| 嘉兴市| 全南县| 安庆市| 开化县| 藁城市| 静安区| 尤溪县| 周口市| 洞头县| 墨脱县| 眉山市| 灌南县| 宜兰市| 屏南县| 达日县| 临安市| 招远市| 佛学| 罗源县| 武陟县| 墨竹工卡县| 阿巴嘎旗| 四会市| 阿克苏市| 朔州市| 东台市| 安泽县| 岑溪市| 阳山县| 榆树市|