本环境基于mysql5.6配置,通过openssl生成证书进行配置

一、确认环境信息

1、查看数据库版本

mysql> select version();

+-----------+

| version() |

+-----------+

| 5.6.36 |

+-----------+

2、查看数据库是否支持ssl配置

mysql> show variables like ‘have%ssl%‘;

+---------------+----------+

| Variable_name | Value |

+---------------+----------+

| have_openssl | DISABLED |

| have_ssl | DISABLED |

+---------------+----------+

2 rows in set (0.00 sec)

3、查看数据库端口号

mysql> show variables like ‘port‘;

+---------------+-------+

| Variable_name | Value |

+---------------+-------+

| port | 3306 |

+---------------+-------+

1 row in set (0.00 sec)

4、查看数据库数据存放路径

mysql> show variables like ‘datadir‘;

+---------------+-------------------+

| Variable_name | Value |

+---------------+-------------------+

| datadir | /data/mysql/data/ |

+---------------+-------------------+

1 row in set (0.00 sec)

二、证书配置

通过openssl 制作生成 SSL 证书(有效期99999)

1、生成一个 CA 私钥
[root@itop ~]#openssl genrsa 2048 > ca-key.pem

2、通过 CA 私钥生成数字证书
[root@itop ~]# openssl req -new -x509 -nodes -days 99999 -key ca-key.pem -out ca.pem

3、创建 MySQL 服务器 私钥和请求证书
[root@itop ~]# openssl req -newkey rsa:2048 -days 99999 -nodes -keyout server-key.pem -out server-req.pem

4、将生成的私钥转换为 RSA 私钥文件格式
[root@itop ~]# openssl rsa -in server-key.pem -out server-key.pem

5、用CA 证书来生成一个服务器端的数字证书
[root@itop ~]# openssl x509 -req -in server-req.pem -days 99999 -CA ca.pem -CAkey ca-key.pem -set_serial 01 -out server-cert.pem

6、创建客户端的 RSA 私钥和数字证书

[root@itop ~]# openssl req -newkey rsa:2048 -days 99999 -nodes -keyout client-key.pem -out client-req.pem

7、将生成的私钥转换为 RSA 私钥文件格式

[root@itop ~]# openssl rsa -in client-key.pem -out client-key.pem

8、用CA 证书来生成一个客户端的数字证书

[root@itop ~]# openssl x509 -req -in client-req.pem -days 99999 -CA ca.pem -CAkey ca-key.pem -set_serial 01 -out client-cert.pem

9、查看所有生成的SSL文件

[root@itop ~]# ll *.pem

三、数据库配置SSL证书

1、复制 CA 证书和服务端SSL文件至MySQL 数据目录

[root@itop ~]# cp ca.pem server-*.pem /data/mysql/data –v

2、修改 MySQL 数据目录的CA 证书和服务端 SSL 文件所属用户与组

[root@itop ~]# chown -v mysql.mysql /data/mysql/data/{ca,server*}.pem

3、修改MYSQL配置文件,添加SSL调用配置【/etc/my.cnf】

vi /etc/my.cnf

4、重启MYSQL服务,并检查数据库SSL是否开启状态

注:have_openssl 与 have_ssl 值都为YES表示ssl开启成功

[root@itop ~]# /etc/init.d/mysqld restart

mysql> show variables like ‘have%ssl%‘;

四、测试SSL可用性

1、创建用户并指定SSL连接

mysql> grant all on . to ‘test‘@‘%‘ identified by ‘p@ssw0rd‘ require SSL;

2、通过密码连接测试

[root@itop ~]# mysql -utest -pp@ssw0rd -h 192.168.1.110

3、通过客户端密钥与证书SSL + 密码连接测试,并查看属性

[root@itop ~]# mysql -utest -pp@ssw0rd -h 192.168.1.110 --ssl-cert=client-cert.pem --ssl-key=client-key.pem

mysql> \s

Mysql配置ssl证书

Mysql配置ssl证书相关推荐

  1. mysql安装ssl证书_Mysql配置ssl证书

    一.确认环境信息 1.查看数据库版本 mysql> select version(); +-----------+ | version() | +-----------+ | 5.6.36 | ...

  2. 配置ssl证书_Mysql配置ssl证书

    本环境基于mysql5.6配置,通过openssl生成证书进行配置 一.确认环境信息 1.查看数据库版本 mysql> select version(); +-----------+ | ver ...

  3. JavaWeb项目部署服务器并配置ssl证书教程

    JavaWeb项目部署服务器并配置ssl证书教程 相信大家学了1.2年的编程后可能已经学会了自己写web项目,但是也只能在自己本地玩耍,十分的打击学习热情(主要是没办法跟朋友装杯).本文是一篇较为详细 ...

  4. 申请阿里云服务器并配置SSL证书(附带微信公众号配置服务器)

    首先大家要了解到自己的笔记本连接wifi是没有公网的,当然建议大家在公司测试,毕竟在工作空余时间学习学习提升一下技术还是比较好的 首先服务器配置,最重要的一点 要有自己的服务器, 如果有公网的话 可以 ...

  5. 配置ssl证书_Nginx监听443端口配置SSL证书

    1.先去宝塔:https://www.bt.cn/申请一个免费SSL证书:2.点支付订单后,还需要再列表 验证域名,验证域名需要在自己的域名解析配置txt类型字符串值如下,解析值在宝塔SSL申请列表详 ...

  6. 我是如何将网站全站启用Https的?-记录博客安装配置SSL证书全过程

    评论»   文章目录 为什么要Https 如何选择Https 安装部署SSL证书 平滑过渡Https 搜索引擎的响应 启用Https小结 正如大家所看到的,部落全站已经启用了Https访问了,连续几天 ...

  7. asn1 pem pfx格式证书_Springboot中详细配置SSL证书

    一.为什么要部署SSL证书: 目前互联网采取的是全网强制SSL,尤其是微信开发.APP开发.谷歌等都是强制的,为确保数据安全性,把http请求改成HTTPS(URL https://而不是http:/ ...

  8. properties 配置回车_在Ubuntu上部署基于Docker的RSSHub,并配置SSL证书

    本文首发于简书,为同一作者 最近开始使用 RSS 这种信息聚合神器,再也不要打开各种 App 了.然而对于像微博.bilibili 这些不提供 RSS 订阅的网站还是有些头疼.于是尝试了 RSSHub ...

  9. Nginx 配置 SSL 证书步骤小记

    接上篇讲到 Startssl SSL 证书申请成功后(具体点这里),该怎么配置 SSL 证书到Nginx上面呢?其实步骤很简单. 1,按照如下格式修改nginx.conf 配置文件,80端口会自动转给 ...

最新文章

  1. DL之BP:神经网络算法简介之BP算法简介(链式法则/计算图解释)、案例应用之详细攻略
  2. wxWidgets:进程间通信
  3. 执行apt-get命令提示没有该命令
  4. mysql 变量作用_MySQL变量的用法
  5. 【RabbitMQ】8、RabbitMQ之mandatory和immediate
  6. 解决 idea 运行 Spring Boot 项目启动慢的问题
  7. 类的初始化列表_【Flutter 111】Flutter手把手教程Dart语言——类、类的的成员变量和方法、类的构造函数...
  8. Html5 小球键盘移动
  9. ASP.NET 5系列教程
  10. Javascript第四章变量的提升和预解析方法流程第四课
  11. Vue项目用webpack打包后,预览时资源路径出错(文末有vue项目链接分享)
  12. mysql从一个表中拷贝数据到另一个表中sql语句
  13. 什么是功率因数补偿/校正
  14. 数据结构--链表概念及常见链表结构
  15. 科学电子计算机百分数怎么弄,计算器上的百分比怎么用
  16. 实验一 数字类型及其操作
  17. java组件叠加显示,如何让上层的组件一直在上层显示
  18. 梯度是什么,简单说梯度下降是什么
  19. JAVA程序填空题用公式求e_Java 使用对象 编程练习题
  20. hp打印机无法与计算机,HP打印机无法连接到计算机

热门文章

  1. 浅谈TCP协议的端口(port)
  2. 单片机矩阵式键盘扫描程序
  3. Numpy:数组(Ndarray)操作之数组的转换
  4. C语言完成图书管理系统
  5. 游戏分析鉴赏选修大作业
  6. Facade(外观模式) 结构型
  7. 掌控板+Mixly+MixIO 初试物联网-摇杆篇
  8. Android智能指针——读书笔记
  9. 6580 8.1 mtp模式,查看手机容量大小修改
  10. VSCode安装及配置