分享到:

乌鲁木齐伯爵伟业电子产品经销部新疆U盘数据恢复收费,乌鲁木齐硬盘数据恢复软件,乌鲁木齐服务器数据恢复,我们将竭诚为您服务.

联系资料

乌鲁木齐伯爵伟业电子产品经销部
所在地区:
新疆 乌鲁木齐市
公司主页:
暂无
电话号码:
1310*******
传真号码:
暂无
联 系 人:
袁先生
移动电话:
1310*******
电子邮箱:
暂无

如何对MySQL数据库进行安全配置

发布于 2019年04月09日

[摘要]如何对MySQL数据库进行安全配置 新疆手机数据恢复了解到MySQL 是一个真正的多用户、多线程SQL数据库服务器,它是一个客户机/服务器结构的实现
    如何对MySQL数据库进行安全配置
    了解到MySQL 是一个真正的多用户、多线程SQL数据库服务器,它是一个客户机/服务器结构的实现。MySQL是现在流行的关系数据库中其中的一种,相比其它的数据库管理系统(DBMS)来说,MySQL具有小巧、功能齐全、查询迅捷等优点。MySQL 主要目标是快速、健壮和易用。目前,在大中型企业中已经得到了较好的运用,但是由于它是多平台的数据库,不可避免的默认配置也是适合多种情况的需求,因此需要用户需要在自定义的环境下对MySQL的使用进行加固。
    安全配置
    数据库作为数据管理的平台,它的安全性首先由系统的内部安全和网络安全两部分来决定。对于系统管理员来说,首先要保证系统本身的安全,在安装MySQL数据库时,需要对基础环境进行较好的配置。
    1、修改root用户口令,删除空口令
    缺省安装的MySQL的root用户是空密码的,为了安全起见,必须修改为强密码,所谓的强密码,至少8位,由字母、数字和符号组成的不规律密码。使用MySQL自带的命令mysaladmin修改root密码,同时也可以登陆数据库,修改数据库mysql下的user表的字段内容,修改方法如下所示:
    2、删除默认数据库和数据库用户
    一般情况下,MySQL数据库安装在本地,并且也只需要本地的php脚本对mysql进行读取,所以很多用户不需要,尤其是默认安装的用户。MySQL初始化后会自动生成空用户和test库,进行安装的测试,这会对数据库的安全构成威胁,有必要全部删除,最后的状态只保留单个root即可,当然以后根据需要增加用户和数据库。
    3、改变默认mysql管理员帐号
    系统mysql的管理员名称是root,而一般情况下,数据库管理员都没进行修改,这一定程度上对系统用户穷举的恶意行为提供了便利,此时修改为复杂的用户名,请不要在设定为admin或者administraror的形式,因为它们也在易猜的用户字典中。
    4、关于密码的管理
    密码是数据库安全管理的一个很重要因素,不要将纯文本密码保存到数据库中。如果你的计算机有安全危险,入侵者可以获得所有的密码并使用它们。相反,应使用MD5()、SHA1()或单向哈希函数。也不要从词典中选择密码,有专门的程序可以破解它们,请选用至少八位,由字母、数字和符号组成的强密码。在存取密码时,使用mysql的内置函数password()的sql语句,对密码进行加密后存储。例如以下方式在users表中加入新用户。
    5、使用独立用户运行msyql
    绝对不要作为使用root用户运行MySQL服务器。这样做非常危险,因为任何具有FILE权限的用户能够用root创建文件(例如,~root/.bashrc)。mysqld拒绝使用root运行,除非使用–user=root选项明显指定。应该用普通非特权用户运行mysqld。正如前面的安装过程一样,为数据库建立独立的linux中的mysql账户,该账户用来只用于管理和运行MySQL。
    要想用其它Unix用户启动mysqld,,增加user选项指定/etc/***选项文件或服务器数据目录的***选项文件中的[mysqld]组的用户名。
    该命令使服务器用指定的用户来启动,无论你手动启动或通过mysqld_safe或***启动,都能确保使用mysql的身份。也可以在启动数据库是,加上user参数。
作为其它linux用户而不用root运行mysqld,你不需要更改user表中的root用户名,因为MySQL账户的用户名与linux账户的用户名无关。确保mysqld运行时,只使用对数据库目录具有读或写权限的linux用户来运行。
    6、禁止远程连接数据库
    在命令行netstat -ant下看到,默认的3306端口是打开的,此时打开了mysqld的网络监听,允许用户远程通过帐号密码连接数本地据库,默认情况是允许远程连接数据的。为了禁止该功能,启动skip-networking,不监听sql的任何TCP/IP的连接,切断远程访问的权利,保证安全性。假如需要远程管理数据库,可通过安装PhpMyadmin来实现。假如确实需要远程连接数据库,至少修改默认的监听端口,同时添加防火墙规则,只允许可信任的网络的mysql监听端口的数据通过。
    7、限制连接用户的数量
    数据库的某用户多次远程连接,会导致性能的下降和影响其他用户的操作,有必要对其进行限制。可以通过限制单个账户允许的连接数量来实现,设置***文件的mysqld中的max_user_connections变量来完成。GRANT语句也可以支持 资源控制选项来限制服务器对一个账户允许的使用范围。
    8、用户目录权限限制
    默认的mysql是安装在/usr/local/mysql,而对应的数据库文件在/usr/local/mysql/var目录下,因此,必须保证该目录不能让未经授权的用户访问后把数据库打包拷贝走了,所以要限制对该目录的访问。确保mysqld运行时,只使用对数据库目录具有读或写权限的linux用户来运行。
    9、命令历史记录保护
    数据库相关的shell操作命令都会分别记录在.bash_history,如果这些文件不慎被读取,会导致数据库密码和数据库结构等信息泄露,而登陆数据库后的操作将记录在.mysql_history文件中,如果使用update表信息来修改数据库用户密码的话,也会被读取密码,因此需要删除这两个文件,同时在进行登陆或备份数据库等与密码相关操作时,应该使用-p参数加入提示输入密码后,隐式输入密码,建议将以上文件置空。
    10、禁止MySQL对本地文件存取
    在mysql中,提供对本地文件的读取,使用的是load data local infile命令,默认在5.0版本中,该选项是默认打开的,该操作令会利用MySQL把本地文件读到数据库中,然后用户就可以非法获取敏感信息了,假如你不需要读取本地文件,请务必关闭。
    以上所介绍的几点就是有关数据恢复的资讯,相信看了本文的介绍后,对这方面也会有自己的一番认识,以后针对该方面的问题也能很好的解决。在这里,小编推荐您多了解等有关的讯息,希望对您有所帮助!