等保三级:mysql数据库加固思路

等保三级:mysql数据库加固思路

本文采用Mysql8.0.31进行加固,具体命令与Mysql5.x版本命令存在差异,但思路无差,可进行参考。


文章目录


常规操作

create user 'root'@'%' identified by '********';									//创建用户
alter user 'root'@'%' identified with mysql_native_password by '********'; 			//修改密码
rename user 'root'@'%' to 'root'@'192.168.1.1';										//重命名
flush privileges;																	//刷新权限
grant all privileges on *.* to 'root'@'192.168.1.%'; 								//赋予权限
revoke all privileges on *.* to 'root'@'%';											//收回权限
select current_user();																//查看当前登录的用户
select current_role(); 																//查看当前登录的角色
mysqldump -uroot -p mysql>mysql.sql 												//导出mysql数据库
create database xiaozhou_db;														//创建xiaozhou数据库
show databases;																		//展示所有数据库
drop database xiaohzou_db;															//删除数据库
alter user 'root'@'localhost' identified with mysql_native_password by 'xlpszqdbb';	//修改密码
show variables like 'port';															//查看端口

一、身份鉴别

a) 测评内容

应对登录的用户进行身份标识和鉴别,身份标识具有唯一性,身份鉴别信息具有复杂度要求并定期更换

要求:建议身份密码登录,身份标识具有唯一性,身份鉴别信息具有复杂度要求,密码长度最少为8位,密码由数字、字母大小写、特殊符号组成、并设置定期更换,更换时间最长位90天。

1.查看所有用户:
select user,host from mysql.user; 

示例如下:
在这里插入图片描述

2.查看密码复杂度插件:
select * from mysql.`plugin`;

示例如下:
在这里插入图片描述
查看mysql的插件,发现mysql8.0 并没有校验插件,然后查看插件包,发现有这个插件,则对该插件进行安装。
在这里插入图片描述
命令如下:

install plugin validate_password soname 'validate_password.so';

在这里插入图片描述

3.卸载默认密码复杂度插件

auth_socket.so插件为测试环境,顾我们将其卸载
命令如下:

uninstall plugin auth_socket.so;

在这里插入图片描述

4.密码复杂度插件配置
show variables like 'validate%';

在这里插入图片描述

+--------------------------------------+--------+
| Variable_name                        | Value  |
+--------------------------------------+--------+
| validate_password_check_user_name    | ON     |
| validate_password_dictionary_file    |        |
| validate_password_length             | 8      |
| validate_password_mixed_case_count   | 1      |
| validate_password_number_count       | 1      |
| validate_password_policy             | MEDIUM |
| validate_password_special_char_count | 1      |
+--------------------------------------+--------+
  • validate_password_check_user_name,ON为打开
  • validate_password_dictionary_file用于配置密码的字典文件,当validate_password_policy设置为STRONG时可以配置密码字典文件,字典文件中存在的密码不得使用
  • validate_password_length用来设置密码的最小长度,默认值是8最小是0
  • validate_password_mixed_case_count当validate_password_policy设置为MEDIUM或者STRONG时,密码中至少同时拥有的小写和大写字母的数量,默认是1最小是0;默认是至少拥有一个小写和一个大写字母。
  • validate_password_number_count当validate_password_policy设置为MEDIUM或者STRONG时,密码中至少拥有的数字的个数,默认1最小是0
  • validate_password_special_char_count当validate_password_policy设置为MEDIUM或者STRONG时,密码中至少拥有的特殊字符的个数,默认1最小是0
5.密码有效期配置
show global variables like 'default_password_lifetime';

在这里插入图片描述
修改命令为:

set global default_password_lifetime = 90;

在这里插入图片描述
查看user表的几个关键字段:它们的单位都是天,当password_lifetime 为null时,则代表该用户当前口令的有效期是使用的全局变量,而default_password_lifetime 为0代表有效期永远。

查看密码有效期状态:

select user,host,password_lifetime,password_last_changed from mysql.user;

在这里插入图片描述

b) 测评内容

应具有登录失败处理功能,应配置并启用结束会话、限制非法登录次数和当登录连接超时自动退出等相关措施

要求:建议数据库配置登录失败处理功能,应配置并启用结束会话、限制非法登录次数和当登录连接超时自动退出等相关措施,可采取登录失败五次锁定三十分钟;登陆超时设置为30分钟自动退出。

1.查看失败锁定策略:
show variables like "%connection_control%";

在这里插入图片描述
空表表示未安装插件,故我们进行插件安装

install plugin connection_control soname "connection_control.so";
install plugin connection_control_failed_login_attempts soname 'connection_control.so';

在这里插入图片描述
查看插件状态:

select plugin_name,plugin_status from INFORMATION_SCHEMA.PLUGINS where PLUGIN_NAME LIKE 'connection%';

在这里插入图片描述

再次对策略进行查询,发现以下情况

mysql> show variables like "%connection_control%";
+-------------------------------------------------+------------+
| Variable_name                                   | Value      |
+-------------------------------------------------+------------+
| connection_control_failed_connections_threshold | 3          |
| connection_control_max_connection_delay         | 2147483647 |
| connection_control_min_connection_delay         | 1000       |
+-------------
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xlpszqdbb

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值