1.安装acme,socat

curl https://get.acme.sh | sh
apt install socat
ln -s  /root/.acme.sh/acme.sh /usr/local/bin/acme.sh
acme.sh --register-account -m 你的[email protected]

开放80端口:
申请证书:

acme.sh  --issue -d a.com --standalone -k ec-256

2.更新MariaDB服务器配置

现在,您需要将这些新的证书配置到 MariaDB 中。acme.sh 生成的证书包括:
a.com.cer: 服务器证书。
a.com.key: 服务器私钥。
ca.cer: 中等 CA 证书。
fullchain.cer: 完整的证书链(包括服务器证书和CA证书)。
在 MariaDB 中,我们通常使用完整的证书链作为。ssl-ca

3.设置正确的权限(确保只有MariaDB进程可以读取):

cp 证书到你想要的文件夹比如
sudo cp /root/.acme.sh/a.com/fullchain.cer /etc/mysql/ssl/ca.pem # 使用 fullchain 作为 CA

sudo chown mysql:mysql /etc/mysql/ssl/* # 假设 MariaDB 用户是 mysql
sudo chmod 600 /etc/mysql/ssl/server-key.pem # 私钥需严格权限
sudo chmod 644 /etc/mysql/ssl/server-cert.pem
sudo chmod 644 /etc/mysql/ssl/ca.pem

4.编辑 MariaDB 配置文件
编辑配置文件(如或),在部分添加或更新以下内容:/etc/my.cnf | /etc/mysql/my.cnf

[mysqld]
ssl-ca = /etc/mysql/ssl/ca.pem
ssl-cert = /etc/mysql/ssl/server-cert.pem
ssl-key = /etc/mysql/ssl/server-key.pem

5.保存文件后,重启MariaDB服务:

sudo systemctl restart mariadb  # 或 sudo service mysql restart

验证服务器 SSL:运行以下命令检查 MariaDB 是否启用了 SSL:

sudo mysql -u root -p -e "SHOW GLOBAL VARIABLES LIKE 'have_ssl';"

6.在远程主机上测试连接

mariadb -h servername -u username -p --ssl

SHOW GLOBAL VARIABLES LIKE 'have_ssl';  # Should show "YES"
SHOW STATUS LIKE 'Ssl_version';  # To see the TLS version, e.g., TLSv1.3

分类: 默认分类 标签: 暂无标签

评论

暂无评论数据

暂无评论数据

目录