如何保护MySQL中的重要数据
在大多数情况下,硬件和软件故障的数据备份机制来处理。大多数数据库都配备了内置的工具自动完成整个过程,所以这项工作是比较容易的,不会出错。但麻烦来自另一面:防止外国黑客入侵或破坏数据库中的信息。不幸的是,在一般情况下,没有自动工具来解决这个问题。此外,这需要管理员手动设置障碍,以防止黑客和确保公司数据的安全。
不保护数据库的常见原因是这项工作复杂而且麻烦。这是真的,但是如果您应用MySQL,您可以使用一些方便的功能来减少您所面临的风险:
我们在通配符中删除授权表。
MySQL访问控制系统通过一系列所谓的授权表来定义数据库、用户权限表或列的水平。但这些表允许管理员为用户设置了一个包,或一组表,运用通配符。这是潜在的危险,这样做是因为黑客可以使用有限的帐户来访问系统的其他部分。因此,明智的做法是设置用户权限,确保用户只能访问他们所需要的。我们要特别小心,当设置超级特权为个人用户,因为这个级别允许普通用户修改服务器的基本配置和访问整个数据库。
建议:向每个用户帐户显示特权命令,检查授权表,以了解通配符许可证的应用是否合适。
安全需求的使用
该用户帐户的安全是密码,是用来保护他们密切相关。因此,安装mysql的第一件事应该是MySQL root密码(默认为空),修复此漏洞后,接下来我们要问的每一个用户帐户使用的密码,不要在生日用的话,用户名称或词典,这些容易识别的启发式密码。
建议:使用MySQL -安全性授权选项避免使用旧的、不安全的MySQL密码格式。
我们检查配置文件权限。
一般来说,要使服务器连接更快更方便,单个用户和服务器管理员必须存储用户帐户密码在单用户MySQL选项文件。然而,这个密码存储在以纯文本形式的文件,这是很容易访问的。因此,要保证这样的单用户配置文件不是咨询系统中的其他用户并将其存储在一个非公共的位置。理想的情况是,你想要的单用户配置文件可以存储在用户的根目录下,有一个许可证0600。
客户端与服务器之间的加密数据传输:
一个MySQL的重要问题(和其他)的客户端和服务器的体系结构是通过网络传输数据的安全性问题。如果客户端和服务器之间发生的互动以纯文本,黑客就能闻到包获得机密信息。您可以创建数据传输加密的安全通道被激活在MySQL的配置SSL或施加安全应用如OpenSSH关闭漏洞,客户端和服务器的加密形式使得未经授权的用户访问数据非常困难。
禁止远程访问
如果用户不需要远程访问服务器,你可以迫使所有的MySQL的连接是通过UNIX插槽文件完成,从而大大降低网络攻击的风险。这一过程可以跳过网络选项启动服务器来完成的。这可以防止TCP / IP连接到MySQL网络,保证任何用户都可以连接到远程系统。
建议:我们可以添加绑定地址127.0.0.1指令在MySQL服务器配置来增强这一功能,迫使MySQL绑定本机的IP地址,以确保在同一系统中唯一的用户可以连接到MySQL。
我们积极监视MySQL访问记录。
有许多不同的MySQL的日志文件,记录客户的连接,查询,和服务器错误。其中,最重要的是通用查询日志,记录每个客户的连接和时间标签的中断时间,并记录每次查询的客户执行。如果你怀疑一个不寻常的行为,如网络入侵,这是一个很好的方式来监控日志了解行为的来源。
保护MySQL数据库是日常工作,因此,即使您已经完成了这些步骤,也需要更多时间了解安全建议,积极监视和更新系统安全性。