在Debian上为MariaDB配置SSL加密可以确保数据传输的安全性。以下是详细的步骤指南:
如果你还没有安装MariaDB,可以使用以下命令进行安装:
sudo apt update sudo apt install mariadb-server mariadb-client 你需要生成自签名证书或从受信任的证书颁发机构获取证书。以下是生成自签名证书的步骤:
sudo mkdir /etc/mysql/ssl sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/mysql/ssl/mysql-key.pem -out /etc/mysql/ssl/mysql-cert.pem 在生成证书时,系统会提示你输入一些信息,如国家、州、组织名称等。
编辑MariaDB的配置文件 /etc/mysql/mariadb.conf.d/50-server.cnf(或 /etc/mysql/my.cnf),添加或修改以下内容:
[mysqld] ssl-ca=/etc/mysql/ssl/mysql-cert.pem ssl-cert=/etc/mysql/ssl/mysql-cert.pem ssl-key=/etc/mysql/ssl/mysql-key.pem 保存配置文件后,重启MariaDB服务以应用更改:
sudo systemctl restart mariadb 登录到MariaDB并验证SSL配置是否生效:
mysql -u root -p 在MySQL命令行中,执行以下查询:
SHOW VARIABLES LIKE '%ssl%'; 你应该看到类似以下的输出,表明SSL已启用:
+---------------+----------+ | Variable_name | Value | +---------------+----------+ | have_ssl | YES | | ssl_ca | /etc/mysql/ssl/mysql-cert.pem | | ssl_cert | /etc/mysql/ssl/mysql-cert.pem | | ssl_key | /etc/mysql/ssl/mysql-key.pem | +---------------+----------+ 如果你希望所有客户端连接都使用SSL,可以在MariaDB配置文件中添加以下内容:
[mysqld] require_secure_transport = ON 然后重启MariaDB服务:
sudo systemctl restart mariadb 客户端连接时也需要配置SSL。例如,使用 mysql 命令行工具时,可以添加 --ssl-ca、--ssl-cert 和 --ssl-key 选项:
mysql --ssl-ca=/etc/mysql/ssl/mysql-cert.pem --ssl-cert=/path/to/client-cert.pem --ssl-key=/path/to/client-key.pem -u root -p 通过以上步骤,你就可以在Debian上为MariaDB配置SSL加密,确保数据传输的安全性。