MySql数据库安全配置基线.docx
- 文档编号:8411948
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:12
- 大小:19.24KB
MySql数据库安全配置基线.docx
《MySql数据库安全配置基线.docx》由会员分享,可在线阅读,更多相关《MySql数据库安全配置基线.docx(12页珍藏版)》请在冰豆网上搜索。
MySql数据库安全配置基线
Mysql数据库系统安全配置基线
版本
版本控制信息
更新日期
更新人
审批人
V2.0
创建
2012年4月
备注:
1.若此文档需要日后更新,请创建人填写版本控制表格,否则删除版本控制表格。
第1章概述
1.1目的
本文档旨在指导数据库管理人员进行Mysql数据库系统的安全配置。
1.2适用范围
本配置标准的使用者包括:
数据库管理员、应用管理员、网络安全管理员。
1.3适用版本
Mysql数据库系统。
1.4实施
1.5例外条款
第2章帐号
2.1帐号安全
2.1.1禁止Mysql以管理员帐号权限运行
安全基线项目名称
数据库管理系统Mysql远程登录安全基线要求项
安全基线编号
SBL-Mysql-02-01-01
安全基线项说明
以普通帐户安全运行mysqld,禁止mysql以管理员帐号权限运行。
检测操作步骤
1、参考配置操作
Unix下可以通过在/etc/f中设置:
[mysql.server]
user=mysql
2、补充操作说明
基线符合性判定依据
1、判定条件
各种操作系统下以管理员权限运行。
Unix下禁止以root帐号运行mysqld;
2、检测操作
检查进程属主和运行参数是否包含--user=mysql类似语句:
#ps–ef|grepmysqld
#grep-iuser/etc/f
备注
2.1.2避免不同用户间共享帐号*
安全基线项目名称
数据库管理系统Mysql用户属性控制策略安全基线要求项
安全基线编号
SBL-Mysql-02-01-02
安全基线项说明
应按照用户分配帐号,避免不同用户间共享帐号
检测操作步骤
1.参考配置操作
//创建用户
mysql>mysql>insertinto
mysql.user(Host,User,Password,ssl_cipher,x509_issuer,x509_sub
ject)values("localhost","pppadmin",password("passwd"),'','','');
这样就创建了一个名为:
phplamp密码为:
1234的用户。
然后登录一下。
mysql>exit;
@>mysql-uphplamp-p
@>输入密码
mysql>登录成功
2.补充操作说明
基线符合性判定依据
1.判定条件
不用名称的用户可以连接数据库
2.检测操作
使用不同用户连接数据库
备注
手工检查
2.1.3删除无关帐号*
安全基线项目名称
数据库管理系统Mysql帐号管理安全基线要求项
安全基线编号
SBL-Mysql-02-01-03
安全基线项说明
应删除或锁定与数据库运行、维护等工作无关的帐号
检测操作步骤
1.参考配置操作
DROPUSER语句用于删除一个或多个MySQL账户。
要使用DROPUSER,必须拥有mysql数据库的全局CREATEUSER权限或DELETE权限。
账户名称的用户和主机部分与用户表记录的User和Host列值相对应。
使用DROPUSER,您可以取消一个账户和其权限,操作如下:
DROPUSERuser;
该语句可以删除来自所有授权表的帐户权限记录。
2.补充操作说明
要点:
DROPUSER不能自动关闭任何打开的用户对话。
而且,如果用户有打开的对话,此时取消用户,则命令不会生效,直到用户对话被关闭后才生效。
一旦对话被关闭,用户也被取消,此用户再次试图登录时将会失败。
基线符合性判定依据
检测操作:
mysql查看所有用户的语句
输入指令selectuser();
依次检查所列出的账户是否为必要账户,删除无用户或过期账户。
注:
无关的帐号主要指测试帐户、共享帐号、长期不用帐号(半年以上不用)等
备注
手工检查
第3章口令
3.1口令安全
3.1.1不使用默认密码和弱密码
安全基线项目名称
数据库管理系统Mysql账户口令安全基线要求项
安全基线编号
SBL-Mysql-03-01-01
安全基线项说明
检查帐户默认密码和弱密码,口令长度至少8位,并包括数字、小写字母、大写字母和特殊符号四类中至少两类。
且5次以内不得设置相同的口令。
密码应至少每90天进行更换。
检测操作步骤
1.参考配置操作
修改帐户弱密码
如要修改密码,执行如下命令:
mysql>updateusersetpassword=password('test!
p3')whereuser='root';
mysql>flushprivileges;
2.补充操作说明
基线符合性判定依据
1.判定条件
密码长度至少8位,并包括数字、小写字母、大写字母和特殊符号4类中至少2类。
2.检测操作
检查本地密码:
(注意,管理帐号root默认是空密码)
mysql>usemysql;
mysql>selectHost,User,Password,Select_priv,Grant_privfromuser;
备注
3.2授权
3.2.1分配用户最小权限*
安全基线项目名称
数据库管理系统Mysql权限分配策略安全基线要求项
安全基线编号
SBL-Mysql-03-02-01
安全基线项说明
在数据库权限配置能力内,根据用户的业务需要,配置其所需的最小权限。
检测操作步骤
1、参考配置操作
合理设置用户权限,撤销危险授权。
2、补充操作说明
基线符合性判定依据
1判定条件
确保数据库没有不必要的或危险的授权
2检测操作
查看数据库授权情况:
mysql>usemysql;
mysql>select*fromuser;
mysql>select*fromdb;
mysql>select*fromhost;
mysql>select*fromtables_priv;
mysql>select*fromcolumns_priv;
回收不必要的或危险的授权,可以执行revoke命令:
mysql>helprevoke
Name:
'REVOKE'
Description:
Syntax:
REVOKE
priv_type[(column_list)]
[,priv_type[(column_list)]]...
ON[object_type]
{
*
|*.*
|db_name.*
|db_name.tbl_name
|tbl_name
|db_name.routine_name
}
FROMuser[,user]...
备注
手工检查
第4章日志
4.1日志审计
4.1.1配置日志功能*
安全基线项目名称
数据库管理系统Mysql配置日志功能安全基线要求项
安全基线编号
SBL-Mysql-04-01-01
安全基线项说明
数据库应配置日志功能,
检测操作步骤
mysql有以下几种日志:
错误日志:
-log-err
查询日志:
-log(可选)
慢查询日志:
-log-slow-queries(可选)
更新日志:
-log-update
二进制日志:
-log-bin
在mysql的安装目录下,打开my.ini,在后面加上上面的参数,保存后重启mysql服务就行了。
例如:
#Enteranameforthebinarylog.Otherwiseadefaultnamewillbeused.
#log-bin=
#Enteranameforthequerylogfile.Otherwiseadefaultnamewillbeused.
#log=
#Enteranamefortheerrorlogfile.Otherwiseadefaultnamewillbeused.
log-error=
#Enteranamefortheupdatelogfile.Otherwiseadefaultnamewillbeused.
#log-update=
上面只开启了错误日志,要开其他的日志就把前面的“#”去掉
1、补充操作说明
showvariableslike'log_%';查看所有的log命令
2、showvariableslike'log_bin';查看具体的log命令
基线符合性判定依据
1判定条件
启用审核记录对数据库的操作,便于日后检查。
2检测操作
打开/etc/f文件,查看是否包含如下设置:
[mysqld]
log=
备注
手工检查
第5章其他
5.1其他配置
5.1.1安装了最新的安全补丁*
安全基线项目名称
数据库管理系统Mysql补丁安全基线要求项
安全基线编号
SBL-Mysql-05-01-01
安全基线项说明
系统安装了最新的安全补丁(注:
在保证业务及网络安全的前提下,经过兼容性测试后)
检测操作步骤
1、参考配置操作
下载并安装最新mysql安全补丁,
2、补充操作说明
安全警报和补丁下载网址是
基线符合性判定依据
1判定条件
确保数据库为企业版,并且安装了最新安全补丁。
如果是不安全的社区版,建议替换为企业版(收费)
2检测操作
使用如下命令查看当前补丁版本:
mysql>SELECTVERSION()
备注
根据应用场景的不同,如部署场景需开启此功能,则强制要求此项。
5.1.2如果不需要,应禁止远程访问*
安全基线项目名称
数据库管理系统Mysql远程访问安全基线要求项
安全基线编号
SBL-Mysql-05-01-02
安全基线项说明
禁止网络连接,防止猜解密码攻击,溢出攻击和嗅探攻击。
(仅限于应用和数据库在同一台主机的情况)
检测操作步骤
1、参考配置操作
如果数据库不需远程访问,可以禁止远程tcp/ip连接,通过在mysqld服务器中参数中添加--skip-networking启动参数来使mysql不监听任何TCP/IP连接,增加安全性。
2、补充操作说明
基线符合性判定依据
1判定条件
远程无法连接
2检测操作
#cat/etc/f
#ps-ef|grep-imysql
或从客户机远程telnetmysqlserver3306
备注
根据应用场景的不同,如部署场景需开启此功能,则强制要求此项。
5.1.3可信IP地址访问控制*
安全基线项目名称
数据库管理系统Mysql访问策略安全基线要求项
安全基线编号
SBL-Mysql-05-01-03
安全基线项说明
通过数据库所在操作系统或防火墙限制,只有信任的IP地址才能通过监听器访问数据库。
检测操作步骤
1、参考配置操作
执行命令:
mysql>GRANTALLPRIVILEGESONdb.*
·->->TO用户名@'IP子网/掩码';
只有通过指定IP地址段的用户才可以登录
2、补充操作说明
基线符合性判定依据
1、判定条件
在非信任的客户端以数据库账户登陆被提示拒绝。
2、检测操作
用户从其它子网登录,将被拒绝
3、补充说明
备注
手工检查
5.1.4连接数设置
安全基线项目名称
数据库管理系统Mysql连接数安全基线要求项
安全基线编号
SBL-Mysql-05-01-04
安全基线项说明
根据机器性能和业务需求,设制最大最小连接数。
检测操作步骤
1、参考配置操作
编辑MySQL配置文件:
f或者是my.ini
在[mysqld]配置段添加:
max_connections=1000
保存,重启MySQL服务。
基线符合性判定依据
1、判定条件
2、检测操作
用命令:
SHOW[FULL]PROCESSLIST显示哪些线程正在运行
mysqladmin-uroot-pvariables
输入root数据库帐号的密码后可看到
|max_connections|1000|
3、补充说明
备注
第6章评审与修订
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MySql 数据库 安全 配置 基线