当前位置:   article > 正文

数据库安全:MySQL安全配置,MySQL安全基线检查加固

数据库安全:MySQL安全配置,MySQL安全基线检查加固

「作者简介」:冬奥会网络安全中国代表队,CSDN Top100,就职奇安信多年,以实战工作为基础著作 《网络安全自学教程》,适合基础薄弱的同学系统化的学习网络安全,用最短的时间掌握最核心的技术。

在这里插入图片描述

这一章节我们需要知道MySQL的安全基线标准和加固方式。

在这里插入图片描述

1、更新版本

在业务允许的情况下,安装新版本,修补漏洞。

select version(); 查看MySQL版本,结合漏洞情报,判断是否需要安装最新版本。

在这里插入图片描述

2、普通用户运行

MySQL服务需要使用普通用户运行,比如mysql用户。

ps -ef | grep mysqld 属主PID是mysql 或者 运行参数指定了运行用户 --user=mysql

grep -i user /etc/my.cnf 数据库配置文件通过 user=mysql 指定了用户是mysql

在这里插入图片描述

如果运行用户不是mysql,就在 /etc/my.cnf 添加一行 user=mysql

3、删除匿名账户和无关账户

查询用户,用户名和密码字段为空的,就是匿名账户。

MySQL 5.7 以前:select user,password from mysql.user;

MySQL5.7 以后:select user,host,authentication_string from mysql.user;

在这里插入图片描述

删除匿名账户:delete from mysql.user where user='';

刷新权限后生效,否则还可以登录:flush privileges;

4、修改弱口令

修改数据库用户的弱口令。

MySQL 5.7 以前:select user,password from mysql.user;

MySQL 5.7 以后:select user,authentication_string from mysql.user;

在这里插入图片描述

MySQL5.7以前修改密码:

update user set password=password('1234567') where user='root';
flush privileges;
  • 1
  • 2

MySQL5.7以后修改密码:alter user 'root'@'localhost' identified by '1234567';

在这里插入图片描述

5、用户权限

按照软件安全设计的最小特权原则分配用户权限。

查看用户权限:show grants for root@localhost;

在这里插入图片描述

查看用户权限: select * from mysql.user where user='root'\G

在这里插入图片描述

设置权限 grant select on *.* to test@localhost;

删除权限 revoke select on *.* from test@localhost;

6、文件权限

  • ll ~/.mysql_history ~/.bash_history 权限600
  • ll /etc/my.cnf 权限644
  • find / -name *.ibd | xargs ls -al 权限600
  • find / -name *.MYD | xargs ls -al 权限600
  • find / -name *.MYI| xargs ls -al 权限600
  • find / -name *.frm| xargs ls -al 权限600

在这里插入图片描述

7、可信IP

根据实际业务需求,设置可信IP访问。

查看所有用户和登录主机

select user,host from mysql.user;
  • 1

修改指定用户的登录主机

update mysql.user set host = '192.168.153.197' where user = 'test';
  • 1

flush privileges; 刷新权限生效

在这里插入图片描述

8、开启日志

/etc/my.cnf 添加一行 log-error=filename,开启日志记录,重启服务生效。

在这里插入图片描述

9、连接数限制

根据实际业务设置最大连接数。

show variables like 'max_connections'; 查看最大连接数。

在这里插入图片描述

如果每设置,就在数据库配置文件 /etc/my.cnf 中,添加一行 max_connections=1000,重启服务生效。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/在线问答5/article/detail/875465
推荐阅读
相关标签
  

闽ICP备14008679号