windows上mysql5.7开启ssl

一、首先查看是否开启ssl

SHOW VARIABLES LIKE '%ssl%'

DISABLED表示未开启 

二、安装openssl

1.源码安装

官网 https://www.openssl.org/ 下载源码,根据网上的教程完成安装。

2.其他人做的安装包安装

Win32/Win64 OpenSSL Installer for Windows - Shining Light Productions

我安装的是1.1.1q

 

三、生成证书和密钥

进入mysql/bin目录下,执行mysql_ssl_rsa_setup生成生成证书和密钥

通过-d或者--datadir可以指定数据文件目录

mysql_ssl_rsa_setup.exe -d D:/Database/mysql

 

 

 

其中

ca.pem: CA证书

ca-key.pem:CA证书密钥

client-cert.pem:客户端使用的证书

client-key.pem:客户端使用的密钥

private_key.pem:私钥

public_key.pem:公钥

server-cert.pem:服务端使用的证书

server-key.pem:服务端使用的密钥

四、配置my.ini添加ssl

配置完成后重启mysql,此时再查看变量,发现已经开启ssl,并且设置了证书信息

 

五、测试连接

1.navicat测试

 2.springboot连接测试

首先将ca.pem和client-cert.pem转为jks

根证书转换

openssl pkcs12 -export -in ca.pem -inkey ca-key.pem -out ca.p12 -passout pass:123456

keytool -importkeystore -deststorepass 123456 -destkeypass 123456 -destkeystore ca.jks -deststoretype PKCS12  -srckeystore ca.p12 -srcstoretype PKCS12 -srcstorepass 123456

client证书转换

openssl pkcs12 -export -in client-cert.pem -inkey client-key.pem -out client.p12 -passout pass:123456

keytool -importkeystore -deststorepass 123456 -destkeypass 123456 -destkeystore client.jks -deststoretype PKCS12  -srckeystore client.p12 -srcstoretype PKCS12 -srcstorepass 123456

springboot添加ssl配置

ssl:
  path: D:/Database/mysql
  trustCertificateKeyStoreUrl: file:${ssl.path}/ca.jks
  trustCertificateKeyStorePassword: 123456
  clientCertificateKeyStoreUrl: file:${ssl.path}/client.jks
  clientCertificateKeyStorePassword: 123456
  #      config: false
  config: "true&verifyServerCertificate=true&requireSSL=true\
  &trustCertificateKeyStoreUrl=${ssl.trustCertificateKeyStoreUrl}\
  &trustCertificateKeyStorePassword=${ssl.trustCertificateKeyStorePassword}\
  &clientCertificateKeyStoreUrl=${ssl.clientCertificateKeyStoreUrl}\
  &clientCertificateKeyStorePassword=${ssl.clientCertificateKeyStorePassword}"

 再将整个配置到useSSL

如果正常启动表示设置成功。

 

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在MySQL 5.7中启用 SSL,需要执行以下步骤: 1. 生成 SSL 证书和密钥文件。可以使用 OpenSSL 工具生成这些文件。在命令行下使用以下命令: ``` openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/mysql/mysql-server.key -out /etc/mysql/mysql-server.crt ``` 这将生成一个自签名的 SSL 证书和密钥文件。请注意,这只是一个示例,不应将其用于生产环境。 2. 将证书和密钥文件复制到 MySQL 服务器的安装目录中。在本例中,证书文件为 /etc/mysql/mysql-server.crt,密钥文件为 /etc/mysql/mysql-server.key。 3. 在 MySQL 配置文件中启用 SSL。打开 MySQL 配置文件 my.cnf,并添加以下配置选项: ``` [mysqld] ssl-ca=/etc/mysql/mysql-server.crt ssl-cert=/etc/mysql/mysql-server.crt ssl-key=/etc/mysql/mysql-server.key ``` 这里的配置选项 ssl-ca、ssl-cert 和 ssl-key 分别指定了证书颁发机构的证书、服务器证书和服务器密钥的路径。请根据实际情况修改这些路径。 4. 重启 MySQL 服务器以使配置生效。在命令行下使用以下命令: ``` sudo systemctl restart mysql ``` 现在,MySQL 服务器已经启用SSL。可以通过修改客户端连接字符串来使用 SSL 连接。例如,在命令行下使用以下命令连接SSL 启用MySQL 服务器: ``` mysql -u <username> -p --ssl-ca=/etc/mysql/mysql-server.crt --ssl-cert=/etc/mysql/mysql-server.crt --ssl-key=/etc/mysql/mysql-server.key ``` 这里的选项 --ssl-ca、--ssl-cert 和 --ssl-key 分别指定了证书颁发机构的证书、客户端证书和客户端密钥的路径。请根据实际情况修改这些路径。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值