計(jì)算機(jī)二級mysql有用。計(jì)算機(jī)二級mysql是永久的,二級證書表明,持證者具備計(jì)算機(jī)基礎(chǔ)知識和基本應(yīng)用能力,能夠使用高級計(jì)算機(jī)語言編寫程序,能夠從事計(jì)算機(jī)編程、初級計(jì)算機(jī)教學(xué)和培訓(xùn),以及企業(yè)信息化相關(guān)業(yè)務(wù)和營銷服務(wù)。
成都創(chuàng)新互聯(lián)公司是專業(yè)的金平網(wǎng)站建設(shè)公司,金平接單;提供網(wǎng)站制作、做網(wǎng)站,網(wǎng)頁設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行金平網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來合作!
MySQL默認(rèn)的數(shù)據(jù)通道是不加密的,在一些安全性要求特別高的場景下,我們需要配置MySQL端口為SSL,使得數(shù)據(jù)通道加密處理,避免敏感信息泄漏和被篡改。
當(dāng)然,啟用MySQL SSL之后,由于每個數(shù)據(jù)包都需要加密和解密,這個對MySQL的性能是有不小影響的,讀者們在使用的時候,要根據(jù)實(shí)際情況斟酌。
MySQL客戶端登錄服務(wù)器時候的密碼不是明文傳輸,有加密策略處理。
筆者是在 ubuntu12.04 系統(tǒng)上使用MySQL 5.5版本測試的,其他環(huán)境請讀者自行匹配。
配置MySQL服務(wù)器證書
編輯 /etc/mysql/my.cnf 文件
# ssl-ca=/etc/mysql/cacert.pem
# ssl-cert=/etc/mysql/server-cert.pem
# ssl-key=/etc/mysql/server-key.pem
把上面三行默認(rèn)證書配置注釋打開,使用自己的證書。筆者就使用上次在搭建自己的CA服務(wù) – OpenSSL CA 實(shí)戰(zhàn)文章中生成的證書
ssl-ca=/home/yunweipai/user_certs/ca_cert.cer
ssl-cert=/home/yunweipai/user_certs/web.cer
ssl-key=/home/yunweipai/user_certs/web_key_plain.pem
這里需要注意的是,在ubuntu上,配置證書后如果不生效,參考這里解決方法
注意上面配置的 web_key_plain.pem 文件,由于MySQL不支持加密后的私鑰,因此我們使用命令
openssl rsa -in web_key.pem -passin pass:Yunweipai@123 -out web_key_plain.pem
將私鑰解密。MySQL不支持私鑰加密的原因是從安全性角度考慮,因?yàn)槿绻脩魝鬟f一個加密的私鑰,那么必須要用戶傳密碼,那么MySQL怎么存儲這個密碼呢?這就引出了我們在密碼存儲和傳輸?shù)陌踩ㄗh里面提到的一系列問題了。
所以MySQL為了簡化實(shí)現(xiàn),就不支持私鑰加密。
指定客戶端連接方式
MySQL服務(wù)端在對客戶端授權(quán)的時候,可以通過選項(xiàng)指定客戶端連接MySQL 服務(wù)器的SSL級別,參考MySQL賦權(quán)的 REQUIRE值:
ssl_option
SSL: 不認(rèn)證客戶端,客戶端不需要提供證書
X509: 客戶端必須發(fā)送一個有效的X509證書
issuer: 客戶端的證書是否是服務(wù)器所配置的CA頒發(fā)的(在我們場景下是ca_cert.cer頒發(fā)的證書)
subject: 認(rèn)證證書的subject(關(guān)于證書的subject在之前的文章有介紹)
cipher: 指定加密算法
這些選項(xiàng)可以疊加使用,如:X509|issuser
客戶端連接(SSL方式)
mysql 客戶端連接
mysql -u root -pChangeme_123 -P 3306 --ssl-ca=/home/yunweipai/user_certs/ca_cert.cer
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 36
Server version: 5.5.43-0ubuntu0.12.04.1 (Ubuntu)
Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql \s
--------------
mysql Ver 14.14 Distrib 5.5.43, for debian-linux-gnu (i686) using readline 6.2
Connection id: 36
Current database:
Current user: root@localhost
SSL: Cipher in use is DHE-RSA-AES256-SHA
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server version: 5.5.43-0ubuntu0.12.04.1 (Ubuntu)
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: latin1
Db characterset: latin1
Client characterset: latin1
Conn. characterset: latin1
UNIX socket: /var/run/mysqld/mysqld.sock
Uptime: 29 sec
Threads: 1 Questions: 109 Slow queries: 0 Opens: 48 Flush tables: 1 Open tables: 41 Queries per second avg: 3.758
--------------
JDBC連接
在jdbc字符串中增加下面參數(shù)
useSSL=trueverifyServerCertificate=false
這么就不需要客戶端配置證書了,配置就簡單很多。因?yàn)閙ysql本身有賬號口令認(rèn)證,因此不需要證書認(rèn)證。
創(chuàng)建Server SSL證書和私鑰
首先,創(chuàng)建一個臨時的工作目錄,我們將把私鑰和證書文件放在該目錄下。
$ sudo mkdir ~/cert
$ cd ~/cert
確保OpenSSL已安裝在運(yùn)行MySQL服務(wù)器的系統(tǒng)上。通常,所有Linux發(fā)行版在默認(rèn)情況下都安裝了OpenSSL。想檢查一下OpenSSL有沒有安裝,不妨使用下面這個命令。
$ openssl version
OpenSSL 1.0.1f 6 Jan 2014
現(xiàn)在,繼續(xù)創(chuàng)建CA私鑰和證書。下面這些命令將創(chuàng)建ca-key.pem和ca-cert.pem。
$ openssl genrsa 2048 ca-key.pem
$ openssl req -sha1 -new -x509 -nodes -days 3650 -key ca-key.pem ca-cert.pem
第二個命令會詢問你幾個問題。你在這些字段里填入什么并不重要。只管填好那些字段。
下一步是為服務(wù)器創(chuàng)建私鑰。
$ openssl req -sha1 -newkey rsa:2048 -days 730 -nodes -keyout server-key.pem server-req.pem
這個命令會再次詢問幾個問題,你可以填寫上一步中提供的相同答案。
下一步,使用下面這個命令,將服務(wù)器的私鑰導(dǎo)出成RSA類型的密鑰。
$ openssl rsa -in server-key.pem -out server-key.pem
最后,使用CA證書,創(chuàng)建服務(wù)器證書。
$ openssl x509 -sha1 -req -in server-req.pem -days 730 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 server-cert.pem
配置MySQL服務(wù)器上的SSL
完成上述過程后,我們應(yīng)該有了CA證書、服務(wù)器的私鑰及其證書。下一步就是配置MySQL服務(wù)器,以
1、mysqlocp證書的用處有哪些:ocp認(rèn)證是oracle推出的Oracle數(shù)據(jù)庫認(rèn)證專家,屬于oracle認(rèn)證體系中的中級認(rèn)證,有一定的含金量。
2、持有ocp證書可以使求職者有更好的就業(yè)機(jī)會、更高的薪資報(bào)酬、更多的升職加薪的機(jī)會。