数据库 
首页 > 数据库 > 浏览文章

关于加强MYSQL安全的几点建议

(编辑:jimmy 日期: 2024/11/17 浏览:3 次 )

通常我们在连接MySQL的服务器时,要使用到口令。这个口令在网络上传输的时候是加过密的。可是其它的内容都是以明文的方式来进行传输的。

当然如果担心这个不安全的话,可以使用压缩协议(MySQL3.22和以上版本),这样可以让其它的内容不那么容易就被看到。甚至为了让它更加安全,可以考虑下安装ssh。装上它之后,你就能在MySQL服务器与MySQL客户之间,搭建一条加密的TCP/IP连接。
为了使你的MySQL系统更安全,强烈建议考虑以下建议:


1.为每个MySQL用户使用口令。如果你不加设口令的话,其他人可以通过mysql --user other_user database的方式访问你的数据库,在使用MySQL进行检测的时候系统也会给你相应的警告信息。


2.通过mysql_install_db脚本建立mySQL的授权表,你可以通过mysql -u root进行测试,正确的情况下应该不会发生错误。更改root的密码:
shell> mysql -u root mysql
mysql> UPDATE user SET Password=PASSWORD( ew_password)
WHERE user= root;
mysql> FLUSH PRIVILEGES;


3.不要用root方式启动MySQL服务。MySQL可以以任何用户启动。你可以通过添加一个新用户的方式来启动数据库服务(也就是mysql低权限运行)。这也不会对系统造成任何影响,因为MySQL的用户和Unix的用户根本来说就使不同的。


4.如果你把Unix root用户口令放在了mysql.server脚本中,那么必须确保这个脚本只对root是可读的。检查那个运行mysqld的用户,确保这个用户是唯一在数据库目录下有读/写权限的用户。


5.不要把process权限给任何人。mysqladmin processlist的输出会显示出当前正在执行的查询正文,这时如果有另外的用户发出一个UPDATE user SET password=PASSWORD( ot_secure)查询,则会被有process权限的用户看得到查询。mysqld为有process权限的用户保留一个额外的连接, 以便一个MySQL root用户能登录并检查,即使所有的正常连接在使用。


6.不要把file权限给所有的用户。有这权限的用户能在拥有mysqld守护进程权限的文件系统那里写一个文件! file权限也可以被用来读取任何作为运行服务器的Unix用户可存取的文件。这可能被利用,例如,通过使用LOAD DATA装载"/etc/passwd"进一个数据库表,然后它能用SELECT被读入。


7. 如果你不信任你的DNS,你应当使用IP来取代主机名。在任何情况下,你应该非常小心地使用包含通配符的主机名!
相信通过以上的设置过后,你的Mysql主机应该已经相对比较安全,不是那么轻松就会让人攻陷的。

上一篇:mysql 5.5.x zip直接解压版安装方法
下一篇:MySQL数据库InnoDB引擎下服务器断电数据恢复方法
一句话新闻
Windows上运行安卓你用过了吗
在去年的5月23日,借助Intel Bridge Technology以及Intel Celadon两项技术的驱动,Intel为PC用户带来了Android On Windows(AOW)平台,并携手国内软件公司腾讯共同推出了腾讯应用宝电脑版,将Windows与安卓两大生态进行了融合,PC的使用体验随即被带入到了一个全新的阶段。
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 站点导航 SiteMap