通过以下命令确认mysql Server环境:
MariaDB [(none)]> show variables like '%ssl%';
如果显示,
+---------------+----------+
| Variable_name | Value |
+---------------+----------+
| have_openssl | DISABLED |
| have_ssl | DISABLED |
| ssl_ca | |
| ssl_capath | |
| ssl_cert | |
| ssl_cipher | |
| ssl_key | |
+---------------+----------+
7 rows in set (0.01 sec)
表明Mysql Server不支持SSL。
通过修改my.cnf完成配置
vim /etc/my.cnf
在 [mysqld] 下面 添加 ssl 后,保存。
service mariadb stop
service mariadb start
重启mysql服务
此时再打开数据库查询SSL状态:
MariaDB [(none)]> show variables like '%ssl%';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| have_openssl | YES |
| have_ssl | YES |
| ssl_ca | |
| ssl_capath | |
| ssl_cert | |
| ssl_cipher | |
| ssl_key | |
+---------------+-------+
7 rows in set (0.00 sec)
发现mysql已经支持SSL
#使用OpenSSL来创建证书和私钥
先确认openssl安装
[root@mcu web]# openssl version
OpenSSL 1.0.1e-fips 11 Feb 2013
[root@mcu web]#
新建一个 ./cert 目录, 用于存放生成的证书和私钥
[root@mcu mcu]# mkdir ./cert
[root@mcu mcu]# cd ./cert/
#创建 CA 私钥和 CA 证书
然后, 我们先来生成一个 CA 私钥:
openssl genrsa 2048 > ca-key.pem
当有了一个 CA 私钥, 我们接下来就可以使用这个私钥生成一个新的数字证书:
openssl req -sha1 -new -x509 -nodes -days 3650 -key ca-key.pem > ca-cert.pem
执行这个命令时, 会需要填写一些问题, 随便填写就可以了.
执行上述命令后, 我们就有了一个 CA 私钥和一个 CA 证书.
#创建服务器端的 RSA 私钥和数字证书
接着, 我们需要创建服务器端的私钥和一个证书请