mysql开启ssl以及如何创建证书
MYSQL版本8.0.32,默认是开启ssl的,同时也是自带证书的在/var/lib/mysql/下
jdbc连接Mysql数据库需要使用SSL时,可以按一下步骤进行设置:
前置条件(可跳过):
1.新建SSL用户
CREATE USER 'qq'@'%' IDENTIFIED BY '你的密码';GRANT ALL ON *.* TO 'qq'@'%';ALTER USER 'qq'@'%' IDENTIFIED WITH mysql_native_password BY 'password';
caching_sha2_password
2.对用户使用ssl
ALTER USER 'qq'@'%' REQUIRE SSL;FLUSH PRIVILEGES;
3.查看用户情况
SELECT ssl_type From mysql.user Where user="qq"
4取消ssl
update user set ssl_type='' where user='qq';FLUSH PRIVILEGES;
5.准备SSL证书等
6.查看是否启用ssl
show variables like '%ssl%';have_openssl YES
have_ssl YES
MYSQL验证SSL
mysql --ssl-ca=/var/lib/mysql/ca.pem --ssl-cert=/var/lib/mysql/client-cert.pem --ssl-key=/var/lib/mysql/client-key.pem --ssl-cipher=AES128-SHA -u tq -p
进入后输入\s查看ssl加密方式,如果有则为加密ssl登录
jdbc接入
1、Mysql服务器开启SSL配置
2、所在的机器导入ca证书,导入到truststore 文件
keytool -importcert -trustcacerts -alias MySQLCACert -file ca.pem -keystore truststore -storepass mypassword
直接导入到JDK导入证书(部署到本机)
在cmd命令中直接执行该命令
keytool -import -trustcacerts -v -alias Mysql -file "C:\ProgramData\MySQL\MySQL Server 8.0\Data\ca.pem" -keystore "C:\Program Files\Java\jdk1.8.0_192\jre\lib\security\cacerts"
这样做,自己一个人开发,一点问题都没有。但是放到生产就问题大了。
3.查看本地证书
keytool -list -keystore truststore
4、mysql连接设置证书
设置useSSL=true
配置trustCertificateKeyStoreUrl为证书的路径
配置trustCertificateKeyStorePassword为第2步生成的mypassword
本地文件:
jdbc:mysql://127.0.0.1:3306/test?useSSL=true&trustCertificateKeyStoreUrl=file:path_to_truststore_file&trustCertificateKeyStorePassword=mypassword
{“allowPublicKeyRetrieval”: “true”,“useSSL”:“true”,“trustCertificateKeyStoreUrl”:“file:I:\REDEMPTION\ca.pem”,“trustCertificateKeyStorePassword”:“mypass”}
网络文件:
"jdbc:mysql://ip:3306/test?useUnicode=true&useSSL=true&trustCertificateKeyStorePassword=123456&serverTimezone=Asia/Shanghai&trustCertificateKeyStoreUrl=http://localhost:8080/key
{“allowPublicKeyRetrieval”: “true”,“useSSL”:“true”,“trustCertificateKeyStoreUrl”:“http://localhost:7776/truststore”,“trustCertificateKeyStorePassword”:“mypass”}
参考:
[1] https://dev.mysql.com/doc/connector-j/8.0/en/connector-j-reference-using-ssl.html
导入证书
https://www.clzg.cn/article/309424.html
java.sql.SQLNonTransientConnectionException: Public Key Retrieval is not allowed
https://blog.csdn.net/qq_47433566/article/details/123581123
mysql使用jdbc连接增加ssl认证
https://blog.csdn.net/qq_42430287/article/details/123733498
新增证书
http://www.884358.com/mysql-ssl/
自建CA生成证书详解
https://blog.csdn.net/weixin_40228200/article/details/121895791
docker mysql8使用SSL及使用openssl生成自定义证书
https://blog.csdn.net/weixin_43933728/article/details/127338271
mysql开启ssl以及如何创建证书相关推荐
- Docker MySQL开启SSL加密传输方案
Docker MySQL开启SSL加密传输方案 产品:Docker MySQL 版本: 5.6 环境: CentOS Linux 7 文章目录 Docker MySQL开启SSL加密传输方案 方案背景 ...
- mysql ssl jdbc_【MySQLSSLJAVA】关于MySQL开启SSL后,jdbc的配置
一.MySQL服务端配置 # vim /etc/my.cnf ########################################### [mysqld] require_secure ...
- Mysql开启ssl加密协议及Java客户端配置操作指南
Mysql开启ssl加密协议及Java客户端配置操作指南 Mysql配置 验证Mysql开启SSL Java客户端操作 生成证书密码 配置数据库连接 工具配置 Mysql配置 Mysql需要配置对应的 ...
- MySQL开启ssl证书
由于在主从复制中数据是明文的,所以就大大降低了安全性 因此需要借助ssl加密来增加其复制的安全性 5.6版本之上 主默认含有证书 MySQL 5.7.18 加密连接mysql_ssl_rsa_setu ...
- MySQL开启SSL的利与弊
最近,准备升级一组MySQL到5.7版本,在安装完MySQL5.7后,在其data目录下发现多了很多.pem类型的文件,然后通过查阅相关资料,才知这些文件是MySQL5.7使用SSL加密连接的.本篇主 ...
- MYSQL 开启 SSL
mysql5.7以上开启并配置 ssl 超级简单的教程 1. 执行以下命令: ##### mysql5.7 提供的 msyql_ssl_rsa_setup 功能,能直接生成ssl密钥和秘银(该文件一般 ...
- Mysql 开启ssl连接
注意!本文是针对Mysql 5.7版本以上数据库,版本较低者可看这一篇博客:https://www.cnblogs.com/zhoujinyi/p/4191096.html 1. 检查当前SSL / ...
- mysql数据库开启ssl_MySQL 5.7.x开启SSL连接
1 理论部分 1.1 SSL的理解 1.1.1 基本概念 SSL即Secure Socket Layer)- 安全套接字层(由Netscape提出 1.1.2 SSL的作用 SSL - 实现客户端和服 ...
- MySQL配置SSL加密连接
环境: OS:centos7 MySQL: 5.7.33 一.MySQL开启ssl连接支持 查看是否开启 登录MySQL,运行如下命令: SHOW VARIABLES LIKE '%ssl%'; 如下 ...
最新文章
- display vs visibility
- Camel中的几个重要概念之Routes, RouteBuilders 和 Java DSL
- JavaSE 国际化 简单例子
- html 只能输入正数,vue 限制input只能输入正数
- C++安全方向(三):3.6 SHA2原理分析和比特币挖矿,以及代码演示
- java 判断qq_检测QQ号码是否存在
- 暴风雨前的耳聋:普京在9·11前两天致电布什,警告可能发生恐袭
- java 数组存入数据库_哔站播放量高达三百万的Java视频教程,如此惊人,还不来学?...
- 计算机没鼠标怎么,电脑没鼠标怎么开启系统
- 比特大陆发布终端 AI 芯片 端云联手聚焦安防
- 游戏程序常规设计模式
- FlashFXP命令行
- 快递鸟智选物流API接口平台对接分享实例
- 使用Wamp在win7上搭WEB服务器
- @keyup.enter失效问题
- 《Tomcat内核设计剖析》勘误表
- 李航 统计学习方法 课后习题答案 第二版
- 骇客白访谈——不要做理想主义者,要做一个实干家——《调试者说》播客——许友昌
- Zemax自学---1(基础知识)
- 移动叔叔工具箱android,真正免root的移动叔叔工具箱详细使用教程