MySQL数据库安全配置与加固
MySQL 数据库安全配置
MySQL 数据库基本安全配置
1. 操作系统的安全
要想保护正在运行 MySQL 的主机的安全,不妨参考以下几个指导原则:
(1) 部署 IPTables(Linux)、IPFfilter(Solaris) 或者 MySQL 服务器上其他一些基于主
机的防火墙软件。
大多数 Linux 的发布版本都内置了 IPTables,Linux 内核中的报文筛选和操纵都是高度可配
置的架构,配置起来并非想象中那么难,但是需要花一番工夫。
(2) 使用低特权的 MySQL 账户运行 MySQL 进程。在某些操作系统上这是默认的,但也
有些不是。尤其在 Linux 和 UNIX 主机上,不要以 nobody(举例)身份运行 MySQL 是很
重要的,因为其他进程可能也用这个账户运行,例如,Apache。这是因为如果多个进程共
享同一个账户,一个进程被攻击意味着它们全都会被攻击。例 如,Apache 和 MySQL 都以
nobody 的身份运行,控制 Apache 的任何人都可以控制 MySQL 数据库。
(3)使用 chroot 选项运行 mysqld。这在 Windows 下无法工作,但在 Linux 上,chroot 提
供了优秀的文件特权缓冲区,它通过给定目录下的进程来限制文件访问,这意味着在 MySQL
下,可以确保攻击者没有能力去读或去写操作系统的配置文件或主机上其他守护进程的配置
文件。
要记住,即使有了 chroot 选项,拥有文件特权的攻击