首页 > 解决方案 > 无法为 mariadb 客户端使用 SSL 和 TLS 连接

问题描述

Helo 我使用 MariaDB:Ver 15.1 Distrib 5.5.60-MariaDB 我正在尝试为我的数据库系统启用 SSL-TLS。

以下是我到目前为止所做的配置:

/etc/my.cnf

[mariadb]
ssl-ca=/etc/mysql-ssl/ca-cert.pem
ssl-cert=/etc/mysql-ssl/server-cert.pem
ssl-key=/etc/mysql-ssl/server-key.pem
bind-address = *


[client-mariadb]
ssl-ca=/etc/mysql-ssl/ca-cert.pem
ssl-cert=/etc/mysql-ssl/client-cert.pem
ssl-key=/etc/mysql-ssl/client-key.pem
ssl-verify-server-cert

在 MySQL 控制台中,我得到了这个:

+---------------+--------------------------------+
| Variable_name | Value                          |
+---------------+--------------------------------+
| have_openssl  | YES                            |
| have_ssl      | YES                            |
| ssl_ca        | /etc/mysql-ssl/ca-cert.pem     |
| ssl_capath    |                                |
| ssl_cert      | /etc/mysql-ssl/server-cert.pem |
| ssl_cipher    |                                |
| ssl_key       | /etc/mysql-ssl/server-key.pem  |
+---------------+--------------------------------+


MariaDB [(none)]> STATUS;
--------------
mysql  Ver 15.1 Distrib 5.5.60-MariaDB, for Linux (x86_64) using readline 5.1

Connection id:          2
Current database:
Current user:           root@localhost
SSL:                    Not in use
Current pager:          stdout
Using outfile:          ''
Using delimiter:        ;
Server:                 MariaDB
Server version:         5.5.60-MariaDB MariaDB Server
Protocol version:       10
Connection:             Localhost via UNIX socket
Server characterset:    latin1
Db     characterset:    latin1
Client characterset:    utf8
Conn.  characterset:    utf8
UNIX socket:            /var/lib/mysql/mysql.sock
Uptime:                 12 sec

我应该怎么做才能让我的客户端使用 SSL/TLS 连接?

我缺少什么配置?

此文件夹下有三个文件:/etc/my.cnf.d

  1. 客户端.cnf
  2. mysql-clients.cnf
  3. 服务器.cnf

我应该对这些文件中的任何一个进行任何更改吗?

更新 :

当我将客户端配置放入 my.cnf 时,出现此错误:

[client-mariadb]
ssl-ca=/etc/mysql-ssl/ca-cert.pem
ssl-cert=/etc/mysql-ssl/client-cert.pem
ssl-key=/etc/mysql-ssl/client-key.pem

错误 2026 (HY000):SSL 连接错误:错误:14090086:SSL 例程:ssl3_get_server_certificate:证书验证失败

标签: mysqlsslssl-certificatemariadb

解决方案


推荐阅读