MySQL标准检查表

MySQL标准检查表
分类测评项预期结果评估操作示例检查情况结果整改建议
身份鉴别默认账号要求不存在默认数据库和默认帐号;
不存在匿名账户;
应用系统应使用新建用户,不得使用系统默认账户。
mysql> show databases;
mysql> select * from user;
只保留单个管理员root和应用系统专用账户
在不影响系统正常运行的情况下删除默认账号,若默认账号下有系统运行,则修改默认账号名。
数据库系统管理用户账号名和密码要求项修改root用户默认口令,删除空口令;
改变默认mysql管理员帐号,host为空

 
mysql> select * from user;
查看列表中root用户口令不为空,host为空
修改root用户的默认密码,不能有空口令,MySQL默认的账户为root,需要新建一个账户。MySQL账户的Host=%应该为空,这样来禁止远程连接。
管理员口令策略至少8位,数字、字母(大小写)、特殊字符组成的不规律密码mysql>select password from user;
查看密码
密码修改为8位以上,包含数字,字母(大小写),特殊字符三种形式
账号权限策略除管理员账户之外的其他账户不得拥有系统数据库的任何权限,不得拥有File,Grant,Reload,Shutdown,Process等权限的任意一种mysql>show grants for root@localhost;查看root用户的权限。
Show grants for+用户名@地址,可以查看指定账户的权限
修改除管理员外其他用户的权限,其他用户不能有File,Grant,Reload,Shutdown,Process等权限,不能出现其他高权限用户
访问控制MySQL运行在单独的组上不能在root账户运行MySQL服务器,使用普通非特权用户运行mysql>id mysqlMySQL不能运行在root用户上,需新建一个专用账户给MySQL数据库
文件权限控制MySQL的数据目录、日志目录,以及目录下的文件属主和属组只能是mysql账号,不能给予其他账号任何权限ls –la /usr/local/mysql;查看数据目录所属的账号
ls –la /usr/local/mysql/var
查看日志目录所属的账号
命令历史记录保护mysql.history文件中为空,没有命令历史记录若没有修改存储历史命令的文件名,则是mysql.history,我们执行find / -name mysql.history站到文件夹所在的位置;
cat 打开查看该文件内容
若修改了存储的文件名,则需要询问管理员确认存储位置。
将.bash_history,.mysql_history文件置空。
ln -s /dev/null .bash_history;
ln -s /dev/null .mysql_history;
将历史命令缓存直接引向垃圾箱
安全审计启用日志记录启用了日志记录,记录日志信息
log-error,log,log-slow-queries这三种日志的状态是ON状态
MySQL>show variables like 'log_%';进入my.cnf中,在[mysqld]下面加log-error=/usr/local/mysql/log/error.log
log=/usr/local/mysql/log/mysql.log
long_query_time=2
log-slow-queries= /usr/local/mysql/log/slowquery.log
log-queries-not-using-indexes

 
审计记录应包括事件的日期、时间、类型、主体标识、客体标识和结果等审计记录包括事件的日期、时间、类型、主体标识、客体标识和结果等内容cat /etc/audit/auditd.conf
cat /etc/audit/audit.rules
首先需要开启logbin日志(记录数据库修改语句和生效时间),再与init-connect相结合,两者结合记录完整的信息
操作系统应遵循最小安装的原则,仅安装需要的组件和应用程序,并通过设置升级服务器等方式保持系统补丁及时得到更新1)系统安装的组件和应用程序遵循了最小安装的原则;
2)不必要的服务没有启动;
service --status-all | grep running对不必要的服务进行关闭,仅保留系统所需要的最小服务
其他内容限制单个用户允许的连接数量对单个用户的连接数的最大值做出限制,my.cnf中的max_user_connections系统变量为非零值MySQL>show global variables like '%connect%'根据系统的实际承受能力,限制单个用户连接数,在/etc/my.cnf中进行限制
服务监听端口修改mysql默认监听端口3306为其他端口show global variables like 'port';看一下监听端口是不是3306vim my.cnf文件,修改其中的port参数为非3306且未被占用的端口
登录终端超时锁定设置了超时时间,在时间内没有操作,再次操作时就会提示超时MYSQL>show VARIABLES like '%timeout%';
或访谈了解防火墙等其他安全设备是否做了相关策略
设置interactive_timeout为300秒.
Mysql> set global interactive_timeout=300;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值