MySQL的安全设置123

回复 星标
更多
«
MySQL的安全设置123
»

安全问题总是无比重要。比如,刚刚网易邮箱的数据库就给扒掉了。

作为安全专业毕业的人,虽然毕业也没进入安全领域,但是还是比较敏感的。因此,借这个机会,总结下MySQL与安全相关的内容。

MySQL初始化安装过程中,有一些细节需要注意:

1.空密码、匿名用户(删掉)
2.密码长度、复杂度、弱口令(用长密码,复杂密码,别总是用一套密码)

3.test库删掉(默认谁都能访问,就算不影响其他数据,我一直写数据,可以撑爆你的硬盘)

4.尽量提供最小的权限给用户,拒绝提供super、file、processlist、drop、truncate权限的

5.log访问安全(binlog可能暴漏密码)

6.什么用户run MySQL(小心黑客用MySQL导一个webshell到本地)

7.必要时只监听本地IP

8.数据目录的属主,防止其他用户修改

9.mysql_history(要不要定期清理一下)

其他问题:

1.自身Bug导致数据丢失(如知名的xid冲突问题),只能及时升级新版本了

2.SQL注入导致数据丢失、被错误修改(业务端做校验,富文本做检测)

3.手抖、误删数据(sql_safe_update可以防止)

这些很少用的方式:

1.审计插件(persona有)

2.SSL/TLS连接数据库

3.数据加密

但是,我们平时能做的、经常要做的、最重要的是:备份!备份!备份!

新窗口打开 关闭