mysql使用SSL连接配置学习(二)

本文详细介绍了如何配置MySQL服务器以开启SSL,并提供了客户端使用jdbc连接时的不同设置,包括直接信任证书、单向验证及双向验证服务端和客户端证书的方法。涉及的连接字符串属性如`useSSL`, `requireSSL`, `verifyServerCertificate`, `trustServerCertificate`等参数的设置及其含义也进行了说明。" 116606696,10540237,理解Linux内核:中断保存与恢复的细节解析,"['Linux内核', '中断处理', '汇编语言', '内核编程']
摘要由CSDN通过智能技术生成

参考:https://www.jianshu.com/p/5bc9a59dcf95

MySQL 开启SSL

# vim /opt/mysqlconfig/mysqld.cnf

添加:

require_secure_transport = ON

ssl-ca                  = /var/lib/mysql/ca.pem

ssl-cert                = /var/lib/mysql/server-cert.pem

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

# ll /opt/mysqldata/*.pem

MySQL 开启SSL,客户端jdbc的几种设置

 

关于开启 MySQL SSL,客户端dbc的设置分以下几种情况:

1. 服务端开启SSL,配置证书,客户端连服务端,直接信任证书,不用配置证书

2. 服务端开启SSL,配置证书,客户端连服务端,配置单向验证客户端或者服务端证书

3. 服务端开启SSL,配置证书,客户端连服务端,配置双向验证服务端证书和客户端证书

 

 

MySQL Server端是 x509 的pem格式证书,怎么跟客户端的 java程序(要连MySQL,jks格式证书)建立证书认证关系?

x509 的 pem格式证书,可以通过转换,变成 jks格式证书。

 

 

1. 服务端开启SSL,配置证书,客户端连服务端,直接信任证书,不用配置证书

MySQL驱动

driverClassName=com.mysql.cj.jdbc.Driver

url=jdbc:mysql://xx.xx.xx.xx:3306/test?allowMultiQueries=true&useUnicode&characterEncoding=UTF-8&autoReconnect=true&useSSL=true&verifyServerCertificate=false&requireSSL=true

username=root

password=MySQL@123

 

MariaDB驱动

driverClassName=org.mariadb.jdbc.Driver

url=jdbc:mariadb://xx.xx.xx.xx:3306/test?allowMultiQueries=true&useUnicode&characterEncoding=UTF-8&autoReconnect=true&useSSL=true&trustServerCertificate=true&requireSSL=true

username=root

password=MySQL@123

 

关于证书信任设置

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值