二级等保实战:MySQL安全加固

身份鉴别

空闲至多30分钟自动超时退出

打开 RDS 控制台,进入实例详情页面,点击左侧"参数设置",找到 "wait_timeout",默认参数值为 86400,改为 1800,修改完成后点击提交。

这样,用户空闲 30 分钟后,会自动退出登录。

登录失败处理策略

登录失败10次以内,锁定5分钟以上

需要 MySQL 8.0.19+ 才支持 FAILED_LOGIN_ATTEMPTS 和 PASSWORD_LOCK_TIME。

使用 高权限账号/root 账号,登录 MySQL,执行以下 SQL 语句:

sql 复制代码
ALTER USER 'test_user'@'%'
FAILED_LOGIN_ATTEMPTS 10
PASSWORD_LOCK_TIME 1;

上面的意思是说,用户 test_user 在 10 次登录失败后,锁定 1 天。

需要注意的时,PASSWORD_LOCK_TIME 单位是天,不是分钟,且只能为整数。

使用下面的命令验证设置是否生效:

sql 复制代码
SELECT
   User, User_attributes
FROM mysql.user
WHERE user = 'test_user';

解除锁定命令:ALTER USER 'test_user'@'%' ACCOUNT UNLOCK;

限制口令期限

口令限制至多90天

使用 高权限账号/root 账号,登录 MySQL,执行以下 SQL 语句:

sql 复制代码
ALTER USER 'test_user'@'%' PASSWORD EXPIRE INTERVAL 90 DAY;

验证是否生效:

sql 复制代码
SELECT user, host, password_expired, password_lifetime, password_last_changed
FROM mysql.user
WHERE user = 'test_user';

限制默认账户远程

打开 RDS 控制台,进入实例详情页面,点击数据库连接,点击"关闭外网地址"。

加密远程协议

数据库:使用SSL协议远程管理;

打开 RDS 控制台,进入实例详情页面,点击"数据安全性",在 SSL 设置处,开启 SSL 证书信息,点击确定

数据库审计

打开 RDS 控制台,进入实例详情页面,点击"自治服务",找到"安全审计",点击开启安全审计

审计数据存储时长选择180天,点击提交

开启成功后,点击"开始使用"

然后就进入了查看界面

相关推荐
循环不息优化不止31 分钟前
Ktor Pipeline 机制深度解析
android
q***697739 分钟前
Y20030018基于Java+Springboot+mysql+jsp+layui的家政服务系统的设计与实现 源代码 文档
java·spring boot·mysql
q***563842 分钟前
Springboot3学习(5、Druid使用及配置)
android·学习
Pa2sw0rd丶1 小时前
Fastjson 反序列化漏洞深度解析:从原理到实战防护
java·后端·安全
q***64971 小时前
SpringSecurity踢出指定用户
android·前端·后端
q***76661 小时前
SpringSecurity 实现token 认证
android·前端·后端
Chejdj1 小时前
ViewModel#onCleared的实现原理
android·源码阅读
q***09801 小时前
MySQL 常用 SQL 语句大全
数据库·sql·mysql
CheungChunChiu2 小时前
Android 系统中的 NTP 服务器配置与选择逻辑详解
android·运维·服务器
q***49862 小时前
MySQL数据的增删改查(一)
android·javascript·mysql