mairadb 简单开启ssl
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
版权申明
本文系作者 @把地球夺回来 原创发布在Mars Work站点。未经许可,禁止转载。
暂无评论数据