二级等保实战: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天,点击提交

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

然后就进入了查看界面

相关推荐
感谢地心引力5 小时前
安卓、苹果手机无线投屏到Windows
android·windows·ios·智能手机·安卓·苹果·投屏
invicinble5 小时前
对于Mysql深入理解
数据库·mysql
霖霖总总7 小时前
[小技巧56]深入理解 MySQL 聚簇索引与非聚簇索引:原理、差异与实践
数据库·mysql
伐尘7 小时前
【MySQL】间隙锁 与 排他锁 的区别
数据库·mysql
C澒8 小时前
前端监控系统的最佳实践
前端·安全·运维开发
快乐非自愿9 小时前
【面试题】MySQL 的索引类型有哪些?
数据库·mysql·面试
优雅的潮叭9 小时前
cud编程之 reduce
android·redis·缓存
霖霖总总9 小时前
[小技巧55]深入解析数据库日志机制:逻辑日志、物理日志与物理逻辑日志在 MySQL InnoDB 中的实现
数据库·mysql
2601_9496130210 小时前
flutter_for_openharmony家庭药箱管理app实战+用药知识详情实现
android·javascript·flutter
一起养小猫10 小时前
Flutter for OpenHarmony 实战 表单处理与验证完整指南
android·开发语言·前端·javascript·flutter·harmonyos