欧美free性护士vide0shd,老熟女,一区二区三区,久久久久夜夜夜精品国产,久久久久久综合网天天,欧美成人护士h版

首頁綜合 正文
目錄

柚子快報邀請碼778899分享:MYSQL8安全之SSL認證

柚子快報邀請碼778899分享:MYSQL8安全之SSL認證

http://yzkb.51969.com/

MYSQL8安全之SSL認證

SSL概念MYSQL實現(xiàn)SSL的流程MYSQL配置SSl0、SSL策略1、創(chuàng)建證書2、配置SSL證書檢查狀態(tài)

3、配置SSL用戶創(chuàng)建用戶普通認證方式創(chuàng)建用戶強制證書認證設置用戶強制證書登錄

4、SSL登錄SSL加密登錄方法1;SSL加密登錄方法2:

SSL概念

SSL(Secure Socket Layer: 安全套接字) 利用數(shù)據(jù)加密,身份驗證和消息完整性驗證機制,為基于TCP等可靠連接的應用層協(xié)議。SSL協(xié)議提供的功能主要有:

數(shù)據(jù)傳輸?shù)臋C密性;利用對稱密鑰算法對傳輸?shù)臄?shù)據(jù)進行加密身份驗證機制:基于證書利用數(shù)字簽名方法對服務器和客戶端進行身份驗證,其中客戶端的身份驗證是可選的消息完整性驗證:消息傳輸過程中使用MAC算法來校驗消息的完整性。

如果用戶的傳輸不是通過SSL的方式,那么其在網(wǎng)絡中數(shù)據(jù)都是以明文進行傳輸?shù)摹?/p>

在數(shù)據(jù)庫方面,客戶端連接服務器使用SSL連接,能加密通信數(shù)據(jù)。

啟用 SSL:可以在 MySQL 配置文件中啟用 SSL,需要指定 SSL 證書、私鑰和 CA 證書的路徑。SSL 握手驗證:MySQL 8 支持 SSL 握手驗證,可以確保客戶端連接到正確的服務器。SSL 客戶端認證:MySQL 8 支持客戶端證書認證,可以進一步增強安全性。SSL 連接限制:可以通過修改 MySQL 配置文件中的參數(shù)來限制 SSL 連接的最大數(shù)量和連接的最大并發(fā)數(shù)。

總的來說,MySQL 8 的 SSL 功能可以幫助用戶更安全地管理數(shù)據(jù)庫,提高數(shù)據(jù)安全性。

MYSQL實現(xiàn)SSL的流程

先為MYSQL服務器創(chuàng)建SSL證書和私鑰在MYQL里面配置SSL,并啟動服務創(chuàng)建用戶的時候帶上SSL標簽(require ssl)連接數(shù)據(jù)庫的時候帶上SSL

MYSQL配置SSl

手工配置:mysql5.7.6以下版本只能手工配置自動配置:mysql5.7.6以上版本支持自動配置

0、SSL策略

--ssl-mode 是 MySQL 命令行客戶端的一個選項,用于指定 SSL/TLS 連接的模式。

它有四個可能的值:

DISABLED:禁用 SSLREQUIRED:必須使用 SSLVERIFY_CA:驗證CAVERIFY_IDENTITY:驗證身份

在連接到遠程 MySQL 服務器時,需要保護敏感信息和數(shù)據(jù)的安全性,因此應使用 SSL 來加密通信。 而為了提供最高級別的信任和安全性,應將--ssl-mode 設置為REQUIRED(必須使用 SSL)。 --ssl-mode REQUIRED(必須使用 SSL) 是MySQL8中最高安全級別,它要求客戶端必須使用加密 SSL/TLS 連接到服務器,并驗證服務器的身份。 而 --ssl-mode VERIFY_IDENTITY(驗證身份) 不強制要求加密 SSL/TLS 連接,它僅檢查并驗證服務器證書,因此不如 --ssl-mode REQUIRED 安全。 這意味著 MySQL 客戶端將試圖建立 SSL 連接,并且如果無法建立 SSL 連接,則不會連接到 MySQL 服務器,從而確保只有通過 SSL 連接才能訪問數(shù)據(jù)庫。

詳細解釋如下:

REQUIRED 要求所有 MySQL 客戶端必須通過 TLS 密碼套件建立與數(shù)據(jù)庫服務器之間的連接,以提供最高級別的信任和安全性。。 VERIFY_IDENTITY 選項要求 MySQL 客戶端驗證數(shù)據(jù)庫服務器的身份,并持有與其授予一致的主機名或 IP 地址。但如果數(shù)據(jù)庫服務器使用自簽名證書,則可能會由于無法在公鑰基礎架構中下載到 CRL 和 OCSP 響應而交予妥協(xié)項,從而使校驗變得不安全。 PREFERRED 標志允許客戶端建議并嘗試進行 SSL 連接,但不需要建立 SSL 連接。如果 MySQL 客戶端請求未加密連接時,服務器會回答該請求。 VERIFY_CA 在服務器端上對客戶端啟用 SSL 協(xié)議,并確保 SSL 連接是在根證書頒發(fā)機構的頒發(fā)證書上建立的,而且客戶端提供了匹配考驗的專業(yè)證書,非常適合客戶端軟件的驗信標準很高或者要求傳輸數(shù)據(jù)增強保護的情況。

1、創(chuàng)建證書

# 安裝openssl依賴包

dnf install -y openssl

# 查看openssl版本

openssl version

# 生成SSL連接所需要的RSA密鑰對

## datadir 指定數(shù)據(jù)庫文件路徑

## user和uid 指定運行mysql_ssl_rsa_setup命令的用戶

mysql_ssl_rsa_setup --datadir=/var/lib/mysql --user=mysql --uid=mysql

# 默認執(zhí)行即可

mysqld_ssl_rsa_setup

## -vvv 詳細,debug模式

會自動在datadir目錄下創(chuàng)建下面的證書文件

ca-key.pem:CA證書私鑰文件,用于生成SSL連接所需的服務器和客戶端證書。ca.pem:CA證書公鑰文件,用于驗證SSL連接中服務器和客戶端證書的合法性。client-cert.pem:客戶端證書,在SSL連接中用于驗證客戶端的身份。client-key.pem:客戶端證書的私鑰,用于加密和解密SSL連接中客戶端發(fā)送的數(shù)據(jù)。private_key.pem:私鑰文件,用于加密和解密SSL連接中的數(shù)據(jù)。public_key.pem:公鑰文件,用于驗證SSL連接中的數(shù)據(jù)。server_cert.pem:服務器證書,用于驗證MySQL數(shù)據(jù)庫服務器的身份。server_key.pem:服務器證書的私鑰,用于加密和解密SSL連接中服務器發(fā)送的數(shù)據(jù)。

2、配置SSL證書

https://blog.csdn.net/Sn_Keys/article/details/126425869

[mysqld]

# 指定CA證書公鑰文件的路徑

ssl-ca=/path/to/ca.pem

# 指定mysql服務器證書的路徑

ssl-cert=/path/to/server_cert.pem

# 指定mysql服務器證書的私鑰路徑

ssl-key=/path/to/server_key.pem

[client]

# 指定CA證書公鑰文件的路徑

ssl-ca=/path/to/ca.pem

# 指定mysql客戶端證書的路徑

ssl-cert=/path/to/client_cert.pem

# 指定mysql客戶端證書的私鑰路徑

ssl-key=/path/to/client_key.pem

重啟mysql服務

# 重啟mysql服務

systemctl restart mysqld

檢查狀態(tài)

-- 檢查數(shù)據(jù)庫是否啟用SSL

show variables LIKE 'have_SSl';

-- 查看全局變量中包含"SSL"字符的所有變量名和值

show global variables LIKE '%SSL%';

-- 查看tls安全傳輸版本

show global variables LIKE 'tls_version';

從 MySQL5.7.35 開始,不推薦使用 TLSv1 和 TLSv1.1 連接協(xié)議

3、配置SSL用戶

創(chuàng)建用戶普通認證方式

-- 創(chuàng)建用戶

CREATE USER 用戶名@'%' IDENTIFIED BY '表名';

-- 給用戶授權

GRANT ALL ON *.* TO 用戶名@'%';

-- 應用權限配置

FLUSH PRIVILEGES;

-- 查看用戶權限

SELECT user,host,ssl_type,ssl_cipher FROM mysql.user;

創(chuàng)建用戶強制證書認證

REQUIRE SSL 強制要求客戶端使用 SSL/TLS加密協(xié)議與服務器進行通信 REQUIRE X509強制要求客戶端不僅要使用 SSL/TLS連接,而且還需要提供一個有效的 x509證書。在使用 REQUIRE X509 時,MySQL 服務器會驗證客戶端提供的證書是否是受信任的,并且該證書是否匹配已經(jīng)注冊的用戶帳戶中的證書。

-- require ssl 強制用戶使用證書認證

CREATE USER 用戶名@'%' IDENTIFIED BY '表名' require ssl;

-- require x509 強制用戶使用證書認證

CREATE USER 用戶名@'%' IDENTIFIED BY '表名' require x509;

-- 給用戶授權

GRANT ALL ON *.* TO 用戶名@'%';

-- 應用權限配置

FLUSH PRIVILEGES;

-- 查看用戶權限

SELECT user,host,ssl_type,ssl_cipher FROM mysql.user;

設置用戶強制證書登錄

-- 設置強制ssl

alter user user0001@'%' require ssl;

-- 取消強制ssl

alter user user0001@'%' require none;

4、SSL登錄

SSL加密登錄方法1;

# --ssl-mode=disable: 表示關閉SSL加密模式

mysql -uroot -p --ssl-mode=disable

# 登錄mysql后查看加密模式

mysql> status;

# --ssl-mode=required: 表示強制開啟SSL加密模式

mysql -uroot -p --ssl-mode=required

-- 登錄mysql后查看加密模式

status;

SSL加密登錄方法2:

# 指定CA證書及客戶端證書及私鑰

mysql -uroot -p --ssl-ca=/var/lib/mysql/ca.pem \

--ssl-cert=/var/lib/mysql/client-cert.pem \

--ssl-key=/var/lib/mysql/client-key.pem

柚子快報邀請碼778899分享:MYSQL8安全之SSL認證

http://yzkb.51969.com/

相關文章

評論可見,查看隱藏內(nèi)容

本文內(nèi)容根據(jù)網(wǎng)絡資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點和立場。

轉(zhuǎn)載請注明,如有侵權,聯(lián)系刪除。

本文鏈接:http://gantiao.com.cn/post/18796772.html

發(fā)布評論

您暫未設置收款碼

請在主題配置——文章設置里上傳

掃描二維碼手機訪問

文章目錄