参考文章:https://blog.csdn.net/johnhill_/article/details/72831932 ,谢谢!

1.安装openssl

下载地址:http://slproweb.com/products/Win32OpenSSL.html

注意:安装完成后,记得配置系统path路径,指到bin目录。

具体路径请根据个人实际情况调整。

在cmd中,输入openssl,看到下图说明成功!

2.添加SSL支持

执行:

show variables like '%ssl%';

如果have_ssl不等于yes,说明还没有支持SSL。

添加SSL支持,打开my.ini文件:

[mysqld]
datadir=D:/app/MariaDB 10.3/data
port=3306
innodb_buffer_pool_size=511M
character-set-server=utf8
event_scheduler=ON
max_connections=1000
ssl
ssl-ca=D:/cert/ca-cert.pem
ssl-cert=D:/cert/server-cert.pem
ssl-key=D:/cert/server-key.pem
[client]
port=3306
plugin-dir=D:/app/MariaDB 10.3/lib/plugin

只需要添加标红行,重启mariadb服务就行。

重启之后再次执行看看have_ssl是否等于yes:

show variables like '%ssl%';

3.建立cert目录

D:\>mkdir cert
D:\>cd cert

4.配置证书

###为注释,蓝色是执行脚本,之下是执行结果。

###CA 私钥
D:\cert>openssl genrsa 2048 > ca-key.pem
Generating RSA private key, 2048 bit long modulus
.........+++++
................................................................................
................................................................................
.........................................................+++++
e is 65537 (0x010001) ###数字证书
D:\cert>openssl req -sha1 -new -x509 -nodes -days 3650 -key ca-key.pem > ca-cert.pem
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:CN
State or Province Name (full name) [Some-State]:CN
Locality Name (eg, city) []:CN
Organization Name (eg, company) [Internet Widgits Pty Ltd]:test
Organizational Unit Name (eg, section) []:COM
Common Name (e.g. server FQDN or YOUR name) []:test.COM
Email Address []:test@test.COM ###服务器端的证书请求文件,A challenge password必须为空
D:\cert>openssl req -sha1 -newkey rsa:2048 -days 3650 -nodes -keyout server-key.pem > server-req.pem
Generating a 2048 bit RSA private key
................................................................................
+++++
.....+++++
writing new private key to 'server-key.pem'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:CN
State or Province Name (full name) [Some-State]:CN
Locality Name (eg, city) []:CN
Organization Name (eg, company) [Internet Widgits Pty Ltd]:test
Organizational Unit Name (eg, section) []:COM
Common Name (e.g. server FQDN or YOUR name) []:test.COM
Email Address []:test@test.COM Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:test.COM ###服务器端的RSA私钥
D:\cert>openssl rsa -in server-key.pem -out server-key.pem
writing RSA key ###服务器端的数字证书
D:\cert>openssl x509 -sha1 -req -in server-req.pem -days 3650 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 > server-cert.pem
Signature ok
subject=C = CN, ST = CN, L = CN, O = test, OU = COM, CN = test.COM, emailAddre
ss = test@test.COM
Getting CA Private Key ###客户端的证书请求文件,A challenge password必须为空
D:\cert>openssl req -sha1 -newkey rsa:2048 -days 3650 -nodes -keyout client-key.pem > client-req.pem
Generating a 2048 bit RSA private key
.................+++++
.......................................+++++
writing new private key to 'client-key.pem'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:CN
State or Province Name (full name) [Some-State]:CN
Locality Name (eg, city) []:CN
Organization Name (eg, company) [Internet Widgits Pty Ltd]:test
Organizational Unit Name (eg, section) []:COM
Common Name (e.g. server FQDN or YOUR name) []:test.COM
Email Address []:test@test.COM Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []: ###客户端的RSA私钥:
D:\cert>openssl rsa -in client-key.pem -out client-key.pem
writing RSA key ###客户端的数字证书
D:\cert>openssl x509 -sha1 -req -in client-req.pem -days 3650 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 > client-cert.pem
Signature ok
subject=C = CN, ST = CN, L = CN, O = test, OU = COM, CN = test.COM, emailAddre
ss = test@test.COM
Getting CA Private Key

5.在my.ini中配置证书

[mysqld]
datadir=D:/app/MariaDB 10.3/data
port=3306
innodb_buffer_pool_size=511M
character-set-server=utf8
event_scheduler=ON
max_connections=1000
ssl
ssl-ca=D:/cert/ca-cert.pem
ssl-cert=D:/cert/server-cert.pem
ssl-key=D:/cert/server-key.pem

[client]
port=3306
plugin-dir=D:/app/MariaDB 10.3/lib/plugin

只需要添加标红行,重启mariadb服务就行。再次执行

show variables like '%ssl%';

返回结果:

文件说明

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: 客户端的数字证书.

MariaDB:SSL配置的更多相关文章

  1. 百度CDN 网站SSL 配置

    百度CDN SSL配置步骤 一般从SSL提供商购买到的证书是CRT二进制格式的. 1. 将 CRT 导入到IIS中, 然后从IIS中导出为PFX格式 2. 下载openssl,执行下面命令 提取用户证 ...

  2. Nginx SSL配置过程

    1. 在godaddy购买了UCC SSL(最多5个域名)的SSL证书 2. 设置证书 -- 管理 -- 3. 需要制作证书申请CSR文件(在线工具制作或者openssl命令制作),保存CSR和key ...

  3. ssl配置

    Apache SSL配置 作者: JeremyWei | 可以转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明网址: http://weizhifeng.net/apache-ssl.h ...

  4. SSL 通信原理及Tomcat SSL 配置

    SSL 通信原理及Tomcat SSL 双向配置 目录1 参考资料 .................................................................. ...

  5. nginx反向代理cas server之1:多个cas server负载均衡配置以及ssl配置

    系统环境采用centOS7 由于cas server不支持session持久化方式的共享,所以请用其他方式代替,例如:组播复制. 为什么不支持session持久化:http://blog.csdn.n ...

  6. centos7邮件服务器SSL配置

    在上篇文章centos7搭建postfix邮件服务器的搭建中我们没有配置SSL,接下来我们在这篇文章中讲讲centos7邮件服务器SSL配置. 1. 创建SSL证书 [root@www ~]# cd ...

  7. 基于【CentOS-7+ Ambari 2.7.0 + HDP 3.0】搭建HAWQ数据仓库 —— MariaDB 安装配置

    一.安装并使用MariaDB作为Ambari.Hive.Hue的存储数据库. yum install mariadb-server mariadb 启动.查看状态,检查mariadb是否成功安装 sy ...

  8. Sahi (2) —— https/SSL配置(102 Tutorial)

    Sahi (2) -- https/SSL配置(102 Tutorial) jvm版本: 1.8.0_65 sahi版本: Sahi Pro 6.1.0 参考来源: Sahi官网 Sahi Quick ...

  9. Nginx SSL配置

    一.SSL 原理 ① 客户端( 浏览器 )发送一个 https 请求给服务器② 服务器要有一套证书,其实就是公钥和私钥,这套证书可以自己生成,也可以向组织申请,服务器会把公钥传输给客户端③ 客户端收到 ...

  10. Tomcat服务器配置https协议(Tomcat HTTPS/SSL 配置)

    通常商用服务器使用https协议需要申请SSL证书,证书都是收费的,价格有贵的有便宜的.它们的区别是发行证书的机构不同,贵的证书机构更权威,证书被浏览器否决的几率更小. 非商业版本可以通过keytoo ...

随机推荐

  1. 全解史上最快的JOSN解析库 - alibaba Fastjson

    JSON,全称:JavaScript Object Notation,作为一个常见的轻量级的数据交换格式,应该在一个程序员的开发生涯中是常接触的.简洁和清晰的层次结构使得 JSON 成为理想的数据交换 ...

  2. SQL Server中存储过程的创建命令

    Create Proc 存储过程名称 ( @参数1 参数类型, @参数2 参数类型, ... ... --最后一行参数,别加逗号了,加逗号的意思是表示后面还有参数 ) AS 需要执行的SQL命令 GO ...

  3. webpack4

    本地安装: npm init -y cnpm install webpack webpack-cli webpack-dev-server --save-dev 然后装一些所需要的loader和插件: ...

  4. docker(六) 使用docker-maven-plugin插件构建docker镜像(已过时)

    可以参考博客:https://blog.csdn.net/aixiaoyang168/article/details/77453974 docker-maven-plugin官网推荐在新项目中使用do ...

  5. Python中的正则表达式教程

    本文http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html 正则表达式经常被用到,而自己总是记不全,转载一份完整的以备不时之需. 1. ...

  6. linux 命令ls

    命令格式 ls -la /etc -a  查看所有隐藏文件 以.开头的,就是隐藏文件.改名.开头,就可以改成隐藏文件 -l  长格式显示 ]# ls -al total 8 drwxr-xr-x    ...

  7. luogu5316

    P5316 恋恋的数学题 题目背景 恋恋是个可爱的女孩子,最近她沉迷了做数学题. 题目描述 现在恋恋正在处理的题目十分简单:现在有k \space (2\leq k\leq 4)k (2≤k≤4)个数 ...

  8. 字符串格式的方法%s、format和python3.6新特性f-string和类型注解

    一.%s msg = '我叫%s,今年%s,性别%s' %('帅哥',18,'男') print(msg) # 我叫帅哥,今年18,性别男 二.format # 三种方式: # 第一种:按顺序接收参数 ...

  9. Qt 自定义按钮

    自定义控件的实现思路如下: a1.新建一个类,该类继承QPushbutton,由于QPushbutton继承于QWidget,因此可以直接在该继承类里面进行布局管理和挂载控件: a2.新建两个QLab ...

  10. 如何修改hosts文件

     如何修改hosts文件 1.进入路径 C:\Windows\System32\drivers\etc 2.拷贝hosts文件到其他地方3.修改拷贝的hosts文件,右键用记事本打开4.直接修改或添加 ...