mysql5.6 TLS加密通讯

本文参考https://dev.mysql.com/doc/refman/5.6/en/building-with-encrypted-connection-support.html
在mysql的服务端和客户端使用加密通讯的,需要系统支持OpenSSL 或者 yaSSL:

  • MySQL企业版二进制发行版使用OpenSSL编译。不可能在MySQL企业版中使用yaSSL。
  • MySQL 社区版二进制发行版使用yaSSL编译。
  • MySQL 社区版源代码发行版可以使用OpenSSL或yaSSL编译。

如果从源代码的发行版编译MySQL, CMake将配置发行版默认使用yaSSL。要使用OpenSSL编译,请使用以下过程:

  1. 确保您的系统上安装了OpenSSL 1.0.1或更高版本。如果安装的OpenSSL版本低于1.0.1,CMake会在MySQL 配置时产生错误。如果需要获得OpenSSL,请访问http://www.openssl.org
  2. WITH_SSL CMake选项决定使用哪个SSL库来编译MySQL(参见2.9.4节“MySQL源代码配置选项”)。默认值是-DWITH_SSL= bindings,它使用yaSSL。要使用OpenSSL,请将-DWITH_SSL=system选项添加到您通常用于配置MySQL源发行版的CMake命令中。例如:
    
cmake . -DWITH_SSL=system

该命令将该发行版配置为使用已安装的OpenSSL库。或者,要显式地指定到OpenSSL安装的路径名,可以使用以下语法。如果您安装了多个版本的OpenSSL,这可能很有用,以防止CMake选择错误的版本:

cmake . -DWITH_SSL=path_name
  1. 编译并安装发行版。
    要检查mysqld服务器是否支持加密连接,请检查have_ssl系统变量的值:

    mysql> SHOW VARIABLES LIKE ‘have_ssl’;
    ±--------------±------+
    | Variable_name | Value |
    ±--------------±------+
    | have_ssl | YES |
    ±--------------±------+
    如果值为YES,则服务器支持加密连接。如果该值被禁用,则服务器能够支持加密连接,但没有使用适当的——ssl-xxx选项启动,以允许使用加密连接;参见第6.4.1节“配置MySQL以使用加密连接”。

要确定服务器是否使用OpenSSL或yaSSL编译,请检查仅用于OpenSSL的系统或状态变量是否存在。参见第6.4.4节“OpenSSL vs . yaSSL”

猜你喜欢

转载自blog.csdn.net/weixin_43221471/article/details/83113787