MySQL数据库安全基线(加固方法)

MySQL数据库安全基线(加固方法)一、基本安全原则•选择稳定版本并及时更新、打补丁•严禁使用弱口令,定期更新口令•严格的权限分配和访问控制1、系统层面配置:•系统安装时,需要确认没有其他□户登录在服务器上•选择稳定的版本,并及时更新到最新版本、打补丁•查看系统防火墙或网络安全设备,是否有限制对 MySQL数据库的 访问•不设置环境变量或确保 MYSQL_PWD环境变量未设置敏感信息•禁用 MySQL命令历史记录>陪现在&l.my&ql_nisto导丈件rm Z .mysql_history创建它的软连按In -s /dev/nu_l .myscl-nistory如果有特蛀情况雳要打开,1詬殳置JWSQL—HMTFILE即可: 比如export MYSQL_HISTFILE/ . mysql_history•系统安装时运行mysql_secure_installation执行相关安全设置l_secure_instaJ lation黄&丈f丁.几'"-总豈:町为no毗用户设贸密码b)删谯匿名账号匚)取滔2口七用户远理楚录d)地陪tes二匡朗对-es-l^为i万冋权限曰尿斷授权表使修改生敷2、 服务器配置• 3306端口及服务不允许暴露到公网。
如有特殊业务需求需对外网 开放,必须经云安全部审核通讨后,才允许对外网开放•月服务器不应该具备访问外□的能口(如有必要,可单向访问)•新的服务器正式投□使□前,必须经过安全加固3、 口户和密码配置•使用专用的最小权限账号运行Mysql数据库进程•严禁使用弱口令,严禁共享账号•强密码的设定,需要符合以下标准:毎八账号必渍更设密码弓密E马干能印用户名相同,:必选;不得出現用户名••亘兴叫名刁肚司宕卜"址选〕用尸密矜去世八■餵化一討,迭;不能吏用當臣白词;磁迭'不能哽托用匚和关信息:例扣1S.电话号码竽等,{可选〕至?由3■种立筍组戊,包含字四.茫二\将洙時号在內■:〔可选}•使用validate_password.so插件,进行安全加固使用如下羽丄语句;SELECT user, ho.i; FROM myscl.user WHERE (5elect_priv = 1Y') OR (lnsert_pri■/ =SELECT user, hosz FROM [nyscl.db WHERE db = ,niysql, AMD ((5elect_priv = '¥') OF确■!呆返回结杲只韭杲数捱库管理・•合理控制DML/DDL操作授权DM5DL语句包括创建或修改数据库结枸的权卩虽例如:Lri^rti upd祇比血1祇氐create, droSELECT UEer^Host^Db FROM mysql,db WHERE 3elect_prtv='Y'OR Insert_priv^ ' Vr OP Updste_pr'iv= ' V ' OR Delate_priv^ ' Y ' OR Creat^_pr iv-"'OR ?rop_Dr-iv='Y' OR Allsr_priv= '¥r ;丄述查诃到的用户只韮对埒走旳竝据庄乙頁相关恭权限,使.壬妇T命令逅行兀夫权限的亘収;REVOKESE _ECT€N
用外要控制-y^q 1配蛊文件访冋权限•删除默认test数据库,测试帐号,空密码、匿名帐号埶掘目予是阳鬥1埶据阳有頂匠位彗,辽呼刊1命牛;丁界向卜如彳丁兀下总令: show variables where variable_nane1 = 'datadir";在终 踹命令厅下执行如下命令:Is -1