快捷搜索:   nginx

MySQL一级防范检查列表

文章作者:Chris Anley chris@ngssoftware.com
文章翻译:zhouzhen[E.S.T]

MySQL 一级防范检查列表

以下是加固你的 Mysql 服务器安全所要做的工作的重要参考:
Securing MySQL: step-by-step
Secure MySQL Database Design
Securing Your MySQL Installation

• 阅读 MySQL 安全指南:

http://dev.mysql.com/doc/mysql/en/Security.html

• 在你的Mysql服务器上配置 IPTables (Linux) 或者 IPSec filtering ruleset (Windows)。

• 经常访问 http://www.mysql.com/products/mysql/,检查更新。

• 删除所有非 root 的Mysql用户

• 重命名 Mysql 的 ‘root’ 用户

• 为每一个web 应用程序建一个 Mysql 用户 - 或者有可能的话为每个 web 应用程序的每一个角色建一个用户。例如:你可以建一个 Mysql用户用来更新表,并且建另外一个的可以 select 表的低权限的用户。

• 确保 Mysql 用户受到 IP地址和密码的限制。参考 Mysql用户手册的第5.4节, “Mysql的访问权限”,获得更多的信息。

• 使用低权限的’mysql’用户运行Mysql的守护进程。这在一些平台上是默认的,而其它的并不是这样。例如:在windows 平台下 Mysql 以本 地 system 用户权限运行。

• 在’–chroot’选项下运行 mysqld 。确保Mysql用户不能访问其限制目录以外的文件。值得注意的是,Mysql的用户应该禁止读取操作系统的配置文件。在一些情况下你必须防止Mysql用户更改Mysql的配置文件。

•不要给用户不必要的权限,尤其是’File_priv’ 和 ‘Grant_priv’。如果你必须把文件系统和Mysql从内部结合,
为达到这个目的你可以为你的应用程序单独建立一个Mysql用户。

• 在 my.cnf 中添加 “set-variable=local-infile=0″ 禁用 LOAD DATA LOCAL INFILE 命令。

• 了解Mysql漏洞! 经常到 SecurityFocus 和 ICAT检查最新的 Mysql 数据库漏洞。

Ps:随着 php injection 的发展,越来越多的php+mysql的网站被攻陷。而讲Mysql 如何配置和防范的文章又太少。于是我翻译了

Hackproofing MySQL 中的 MySQL Lockdown Checklist,希望对大家有点帮助。

顶(1)
踩(0)

您可能还会对下面的文章感兴趣:

最新评论