1.4. 在 MariaDB 服务器上设置 TLS 加密
默认情况下,MariaDB 使用未加密的连接。对于安全连接,在 MariaDB 服务器上启用 TLS 支持,并配置您的客户端,来建立加密连接。
1.4.1. 将 CA 证书、服务器证书和私钥放在 MariaDB 服务器上 复制链接链接已复制到粘贴板!
在 MariaDB 服务器中启用 TLS 加密之前,请在 MariaDB 服务器上存储证书颁发机构(CA)证书、服务器证书和私钥。
先决条件
以下 Privacy Enhanced Mail(PEM)格式的文件已复制到服务器:
-
服务器的私钥:
server.example.com.key.pem -
服务器证书:
server.example.com.crt.pem -
证书颁发机构(CA)证书:
ca.crt.pem
有关创建私钥和证书签名请求(CSR),以及从 CA 请求证书的详情,请查看您的 CA 文档。
-
服务器的私钥:
流程
将 CA 和服务器证书存储在
/etc/pki/tls/certs/目录中:# mv <path>/server.example.com.crt.pem /etc/pki/tls/certs/ # mv <path>/ca.crt.pem /etc/pki/tls/certs/对 CA 和服务器证书设置权限,使 MariaDB 服务器能够读取文件:
# chmod 644 /etc/pki/tls/certs/server.example.com.crt.pem /etc/pki/tls/certs/ca.crt.pem由于证书是建立安全连接前通信的一部分,因此任何客户端都可以在不需要身份验证的情况下检索它们。因此,您不需要对 CA 和服务器证书文件设置严格的权限。
将服务器的私钥存储在
/etc/pki/tls/private/目录中:# mv <path>/server.example.com.key.pem /etc/pki/tls/private/对服务器的私钥设置安全权限:
# chmod 640 /etc/pki/tls/private/server.example.com.key.pem # chgrp mysql /etc/pki/tls/private/server.example.com.key.pem如果未授权的用户可以访问私钥,则到 MariaDB 服务器的连接不再安全。
恢复 SELinux 上下文:
# restorecon -Rv /etc/pki/tls/