首頁  >  文章  >  資料庫  >  mysql中如何設定ssl_key和ssl-cert與ssl-ca的路徑以及建立ssl連線的實例

mysql中如何設定ssl_key和ssl-cert與ssl-ca的路徑以及建立ssl連線的實例

黄舟
黄舟原創
2017-09-08 11:57:192180瀏覽

1、建立CA 私鑰和CA 憑證

(1)下載並安裝openssl,將bin目錄設定到環境變數;

(2)設定openssl.cfg路徑(若不設定會報錯,找不到openssl設定檔)


set OPENSSL_CONF=G:\Program Files\openssl\openssl-1.0.2d-fips-2.0.10\bin\openssl.cnf

 (3)產生一個CA 私鑰(多出來的檔案:ca-key.pem)


openssl genrsa 2048 > ca-key.pem

 

(4)透過CA 私鑰產生數位憑證(執行這個指令時, 會需要填寫一些問題, 隨便填寫就可以,如:CN 、KunMing、KunMing、KunMing、kmddkj、kmddkj、kmddkj、786479786@qq.com;多出來的兩份文件:ca-cert.pem)


openssl req -sha1 -new -x509 -nodes -days 3650 -key ca-key.pem > ca-cert.pem

  

2、建立伺服器端的RSA 私鑰和數位憑證

(1)建立伺服器端的私密金鑰和一個憑證要求檔(需要回答幾個問題, 隨便填寫即可. 不過需要注意的是, A challenge password 、An optional company name這兩項需要為空;多出來文件:server-key.pem   server-req.pem)


#

openssl req -sha1 -newkey rsa:2048 -days 3650 -nodes -keyout server-key.pem > server-req.pem

 (22 )將產生的私鑰轉換為RSA 私鑰檔案格式


openssl rsa -in server-key.pem -out server-key.pem

 (3)使用原先生成的CA 憑證來產生一個伺服器端的數位憑證(多出來檔案: server-cert.pem)


openssl x509 -sha1 -req -in server-req.pem -days 3650 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 -out server-cert.pem

  

3、建立用戶端的RSA 私鑰與數位憑證

(1)為客戶端產生一個私鑰和憑證請求檔案(多出來檔案:client-key.pem   client-req.pem )


openssl req -sha1 -newkey rsa:2048 -days 3650 -nodes -keyout client-key.pem > client-req.pem

 (2)將產生的私鑰轉換為RSA 私鑰檔案格式


openssl rsa -in client-key.pem -out client-key.pem

 (3)為用戶端建立一個數位憑證(多出來檔案:client-cert.pem )


#

openssl x509 -sha1 -req -in client-req.pem -days 3650 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 -out client-cert.pem

  

SSL 設定及產生檔案說明:

在前面的步驟中, 我們已經產生了8個檔案, 分別是:

#ca-cert.pem: CA 憑證, 用於產生伺服器端/客戶端的數位憑證.

ca-key.pem: CA 私鑰, 用於產生伺服器端/客戶端的數位憑證.

server-key.pem: 伺服器端的RSA 私密金鑰

server-req.pem: 伺服器端的憑證要求檔案, 用於產生伺服器端的數位憑證.

server-cert .pem: 伺服器端的數位憑證.

client-key.pem: 用戶端的RSA 私密金鑰

client-req.pem: 客戶端的憑證要求檔, 用於產生客戶端的數位憑證.

client-cert.pem: 客戶端的數位憑證.

  

4、伺服器端設定

伺服器端需要用到三個檔案,分別是: CA 憑證, 伺服器端的RSA 私鑰, 伺服器端的數位憑證, 我們需要在[mysqld] 設定網域下新增下列內容:


  #[mysqld]下加入如下代码:

  ssl-ca=G:/ProgramData/MySQL/MySQL Server 5.6/mykey/ca-cert.pem

  ssl-cert=G:/ProgramData/MySQL/MySQL Server 5.6/mykey/server-cert.pem

  ssl-key=G:/ProgramData/MySQL/MySQL Server 5.6/mykey/server-key.pem

#  

#5、當設定好後, 我們需要重新啟動MySQL 服務, 讓設定生效.

6、當設定好後, 使用root 登入MySQL, 執行show variables like '%ssl%';測試成功。


###
show variables like '%ssl%';

以上是mysql中如何設定ssl_key和ssl-cert與ssl-ca的路徑以及建立ssl連線的實例的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn