等保要求mysql整改项
1.配置密码复杂度
看当前复杂度配置
show variables like ‘validate_password%’;
安装插件
install plugin validate_password SONAME ‘validate_password.so’;
创建简单密码测试
2.应启用登录失败处理功能
install plugin CONNECTION_CONTROL soname ‘connection_control.so’;
install plugin CONNECTION_CONTROL_FAILED_LOGIN_ATTEMPTS soname ‘connection_control.so’;
在这里插入图片描述
connection_control_min_connection_delay 上面的意思是失败连接超过3次,连接延时1秒
修改配置文件,连接测试
可以看出失败超过5次,连接延时6秒
(会影响所有ip连接)
3.启用ssl连接
1.生成证书
/data/db/mysql-5.7.26/bin/mysql_ssl_rsa_setup -d /data/conf/mysqldb/
2.修改权限
cd /data/conf/mysqldb && chown mysql.mysql ./*
3.修改配置文件/data/conf/mysqldb/my.cnf ,添加证书
ssl-ca=/data/conf/mysqldb/ca.pem
ssl-cert=/data/conf/mysqldb/server-cert.pem
ssl-key=/data/conf/mysqldb/server-key.pem
重启数据库,连接
4.启用ssl证书后抓包测试
配置用户:
grant all privileges on . to 用户@’%’ identified by ‘密码’ require ssl;
flush privileges;
(测试发现使用root去连接,抓包也是加密过的,并没配置要求使用 ssl)
在这里插入图片描述
连接抓包测试:
tcpdump -s 0 -l -w - dst 172.xx.xx.xx and port 3306 |strings
可以看出已经加密
另一台没启用ssl的则能把语句抓取出来