mysql加密连接二mysql_ssl_rsa_setup

Posted 哭泣的馒头

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql加密连接二mysql_ssl_rsa_setup相关的知识,希望对你有一定的参考价值。

一、概述

mysql 发行版包括一个 mysql_ssl_rsa_setup实用程序,可以手动调用该实用程序来生成 SSL 和 RSA 文件。此实用程序包含在所有 MySQL 发
行版中,但它确实需要openssl命令可用。

由服务器或通过调用mysql_ssl_rsa_setup自动创建的 SSL 和 RSA 文件具有以下特征:
SSL 和 RSA 密钥的大小为 2048 位。
SSL CA 证书是自签名的。
SSL 服务器和客户端证书使用 sha256WithRSAEncryption签名算法使用 CA 证书和密钥进行签名。
SSL 证书使用这些公用名 (CN) 值以及适当的证书类型(CA、服务器、客户端):

ca.pem: MySQL_Server_suffix_Auto_Generated_CA_Certificate
server-cert.pm: MySQL_Server_suffix_Auto_Generated_Server_Certificate
client-cert.pm: MySQL_Server_suffix_Auto_Generated_Client_Certificate
该suffix值基于 MySQL 版本号。对于 mysql_ssl_rsa_setup生成的文件,可以使用 --suffix 选项显式指定后缀。

对于服务器生成的文件,如果生成的 CN 值超过 64 个字符, 则省略名称部分。 _suffix
SSL 文件的国家 (C)、州或省 (ST)、组织 (O)、组织单位名称 (OU) 和电子邮件地址具有空白值。

服务器或mysql_ssl_rsa_setup 创建的 SSL 文件 自生成之日起有效期为十年。
RSA 文件不会过期。

每个证书/密钥对的 SSL 文件具有不同的序列号(1 个用于 CA,2 个用于服务器,3 个用于客户端)。
服务器自动创建的文件归运行服务器的帐户所有。使用 mysql_ssl_rsa_setup创建的文件归调用该程序的用户所有。chown()如果程序被调用root
并且--uid 提供了指定应该拥有文件的用户的选项,则 可以在支持系统调用的系统上更改此设置。

在 Unix 和类 Unix 系统上,文件访问模式是 644 用于证书文件(即全球可读)和 600 用于密钥文件(即只能由运行服务器的帐户访问)。
要查看 SSL 证书的内容(例如,检查其有效日期范围),请直接调用 openssl
openssl x509 -text -in ca.pem
openssl x509 -text -in server-cert.pem
openssl x509 -text -in client-cert.pem

也可以使用以下 SQL 语句检查 SSL 证书过期信息:
mysql> SHOW STATUS LIKE Ssl_server_not%;
+-----------------------+--------------------------+
| Variable_name | Value |
+-----------------------+--------------------------+
| Ssl_server_not_after | Apr 28 14:16:39 2027 GMT |
| Ssl_server_not_before | May 1 14:16:39 2017 GMT |
+-----------------------+--------------------------+


以上是关于mysql加密连接二mysql_ssl_rsa_setup的主要内容,如果未能解决你的问题,请参考以下文章

mysql 加密连接SSL

mysql数据库连接密码的加密方法?

九MySQL 常用函数汇总

九MySQL 常用函数汇总

mysql8.0 使用 x509设置加密连接

解决mysql 8.0 Navicat连接异常(加密方式调整)