mysql加固口令 MySQL服務安全加固

2021-10-18 00:23:16 字數 3084 閱讀 9127

資料庫管理人員可以參考本文件進行 mysql 資料庫系統的安全配置加固,提高資料庫的安全性,確保資料庫服務穩定、安全、可靠地執行。

1.禁止 mysql 以管理員帳號許可權執行

以普通帳戶安全執行 mysqld,禁止以管理員帳號許可權執行 mysql 服務。在 /etc/my.cnf 配置檔案中進行以下設定。[mysql.server]

user=mysql

2.避免不同使用者間共享帳號

參考以下步驟。

a.建立使用者。mysql> mysql> insert into

mysql.user(host,user,password,ssl_cipher,x509_issuer,x509_sub

ject) values("localhost","pppadmin",password("passwd"),'','','');

執行以上命令可以建立乙個 phplamp 使用者。

b.使用該使用者登入 mysql 服務。mysql>exit;

@>mysql -u phplamp -p

@>輸入密碼

mysql>登入成功

3.刪除無關帳號

drop user 語句可用於刪除乙個或多個 mysql 賬戶。使用 drop user 命令時,必須確保當前賬號擁有 mysql 資料庫的全域性 create user 許可權或 delete 許可權。賬戶名稱的使用者和主機部分分別與使用者表記錄的 user 和 host 列值相對應。

執行drop user user;語句,您可以取消乙個賬戶和其許可權,並刪除來自所有授權表的帳戶許可權記錄。

4.口令

檢查賬戶預設密碼和弱密碼。口令長度需要至少八位,幷包括數字、小寫字母、大寫字母和特殊符號四類中的至少兩種型別,且五次以內不得設定相同的口令。密碼應至少每 90 天進行一次更換。

您可以通過執行以下命令修改密碼。mysql> update user set password=password('test!p3') where user='root';

mysql> flush privileges;

5.授權

在資料庫許可權配置能力範圍內,根據使用者的業務需要,配置其所需的最小許可權。

檢視資料庫授權情況。mysql> use mysql;

mysql> select * from user;

mysql>select * from db;

mysql>select * from host;

mysql>select * from tables_priv;

mysql>select * from columns_priv;

通過 revoke 命令**不必要的或危險的授權。mysql> help revoke

name: 'revoke'

description:

syntax:

revoke

priv_type [(column_list)]

[, priv_type [(column_list)]] ...

on [object_type]

| db_name.*

| db_name.tbl_name

| tbl_name

| db_name.routine_name

from user [, user] ...

6.開啟日誌審計功能

資料庫應配置日誌功能,便於記錄執行狀況和操作行為。

mysql服務有以下幾種日誌型別:

錯誤日誌: -log-err

查詢日誌: -log (可選)

慢查詢日誌: -log-slow-queries (可選)

更新日誌: -log-update

二進位制日誌: -log-bin

找到 mysql 的安裝目錄,在 my.ini 配置檔案中增加上述所需的日誌型別引數,儲存配置檔案後,重啟 mysql 服務即可啟用日誌功能。例如,

#enter a name for the binary log. otherwise a default name will be used.

#log-bin=

#enter a name for the query log file. otherwise a default name will be used.

#log=

#enter a name for the error log file. otherwise a default name will be used.

log-error=

#enter a name for the update log file. otherwise a default name will be used.

#log-update=

該引數中啟用錯誤日誌。如果您需要啟用其他的日誌,只需把對應引數前面的 「#」 刪除即可。

日誌查詢操作說明

執行show variables like 'log_%';命令可檢視所有的 log。

執行show variables like 'log_bin';命令可檢視具體的 log。

7.安裝最新補丁

確保系統安裝了最新的安全補丁。

注意: 在保證業務及網路安全的前提下,並經過相容性測試後,安裝更新補丁。

8.如果不需要,應禁止遠端訪問

禁止網路連線,防止猜解密碼攻擊、溢位攻擊、和嗅探攻擊。

注意: 僅限於應用和資料庫在同一臺主機的情況。

如果資料庫不需要遠端訪問,可以禁止遠端 tcp/ip 連線,通過在 mysql 伺服器的啟動引數中新增--skip-networking引數使 mysql 服務不監聽任何 tcp/ip 連線,增加安全性。

建議不要將資料庫高危服務對網際網路開放。

9.設定可信 ip 訪問控制

通過資料庫所在作業系統的防火牆限制,實現只有信任的 ip 才能通過***訪問資料庫。mysql> grant all privileges on db.*

·-> -> to 使用者名稱@'ip子網/掩碼';

10.連線數設定

根據您的機器效能和業務需求,設定最大、最小連線數。

在 mysql 配置檔案(my.conf 或 my.ini)的 [mysqld] 配置段中新增max_connections = 1000,儲存配置檔案,重啟 mysql 服務後即可生效。

mysql怎麼加固 mysql安裝及加固

mysql安裝 檢視是否安裝mysql 我們先看一下有沒有安裝mysql yum list installed mysql grep mysql 本地只安裝了php鏈結mysql的庫,沒有安裝mysql 如果有安裝,可以使用安裝的或者解除安裝了重新安裝 新增yum源 去mysql官網查詢 下面我就來...

mysql口令 MySQL 密碼設定

乙個重要的應用就是如何在遺忘root使用者密碼的時候修改密碼,使用的方法是啟動mysql伺服器時忽略載入授權表。由mysql使用使用者名稱和口令的方法與unix或windows使用的方式有很多不同之處 mysql 使用於認證目的的使用者名稱,與unix使用者名稱 登入名字 或windows使用者名稱...

弱口令及安全加固

通常認為容易被別人 他們有可能對你很了解 猜測到或被破解工具破解的口令均為弱口令。常見弱口令有 1 數字或字母連排或混排,鍵盤字母連排 如 123456,abcdef,123abc,qwerty,1qaz2wsx等 2 系統預設賬號密碼 如 tomcat tomcat等 3 短語密碼 如 52013...