【MySQL配置教程】MySQL 5.7 SSL配置教程

Tanglu MySQL 2021-01-14 2759 0

从MySQL 5.7开始默认支持SSL,SSL开启后会对性能有一定影响,如果数据库没有暴露在外网,通常不会打开SSL,但如果数据是相当核心与机密的,建议配置SSL,虽然对性能有影响,但不是特别大。相关配置过程如下:

1、在数据库初始化完成后执行SSL证书生成

bin/mysql_ssl_rsa_setup

2、在datadir会生成很多.pem文件,修改属主为mysql用户

chown -R mysql.mysql /data/mysql/*.pem

3、查看SSL相关状态,如果能获取到pem信息代表成功

show variables like '%ssl%';

4、指定用户是否强制使用SSL

mysql > alter user 'tanglu'@'%' require none; #非强制,也是默认选项
mysql > alter user 'tanglu'@'%' require ssl;  #强制用户使用SSL连接
mysql > alter user 'tanglu'@'%' require x509; #使用X509方式的SSL,客户端在登录的时候必须提供CA文件才可以登录,CA文件就是生成的PEM了

5、开启强制SSL后,用户连接数据库时如果手动关闭SSL,则无法连接上数据库

mysql -utanglu -p123456 -h10.3.0.220 #使用TCP方式连接默认会使用SSL,无需加其他选项
mysql -utanglu -p123456 -ssl-mode=DISABLED  #如果手动关闭SSL则无法连接数据库

评论