让 raspberry pi 上的 MariaDB 10.3 使用 OpenSSL 而不是 yaSSL

Make MariaDB 10.3 on raspberry pi use OpenSSL instead of yaSSL

我使用 Raspbian Buster 进行了 raspberry pi 设置,并创建了一个我打算与移动应用程序一起使用的 OpenSSL 证书颁发机构。根 CA 签署一个中间 CA,该中间 CA 为 MariaDB MySql 服务器签署服务器证书,并使用自制的 WebAPI,它可以为客户端访问数据库签署证书签名请求(客户端和服务器都必须经过身份验证).

我可以通过 MariaDB 客户端连接到数据库,使用 SSL 并要求客户端验证其证书,但是如果我撤销客户端证书,它仍然允许访问。似乎在 Raspberry Pi 上,MariaDB 运行 10.3 并使用 yaSSL 库而不是 OpenSSL,即使 OpenSSL 库在 Pi 上也是如此。

有什么方法可以让 MariaDB 使用 OpenSSL 而不是 yaSSL,因为 openSSL 支持 crl_path,这是 mariadb 检查吊销列表并拒绝访问已吊销证书所必需的 here .另一种选择是使用 MariaDB 10.4,但我相信它必须从我尝试无济于事的源代码编译,或者使用另一个我不想做的 OS。

我正在尝试做同样的事情,但使用的是 10.5 稳定发布的源代码。目前正在编译...

cmake 需要一个构建配置开关才能使用 openssl 进行编译:cmake -DWITH_SSL=SYSTEM

这将使 make 使用 OS 提供的 SSL 库,在我的情况下,Raspberry Pi4 Raspbian Buster 64 位是 openssl。

在你 运行 cmake 之后你可以通过 运行ning cmake -LH 仔细检查它应该在列表中显示 openssl。

(是的,我不知道是谁为 raspbian buster 做出了在 mariadb 上禁用 SSL 的明智决定!)