云服务器部署的mysql数据库怎么防止被“黑”? 

云服务器部署的mysql数据库怎么防止被“黑”?      

        前些天登陆自己写的博客系统突然发现页面一片空白,当时大惊,系统这是又出什么幺蛾子了?于是赶紧看控制台,分析一波。随之发现博客前台调用后台的方法全都是一片红,再一看系统后台发现后台数据库相关操作全都报错了,赶紧打开navicat这才发现部署在云服务器的几个数据库的数据全空了!!只留下了一张warning表提示我联系某个邮箱支付比特币就给恢复数据。。。。。(心里无数草泥马奔腾而过),刚毕业的俺啥时候见过这阵仗,于是各种百度恢复数据的方法,最终花了大把的时间精力艰难的恢复了各个表~ 痛定思痛,花了些时间去了解怎么提高部署在云服务上的数据安全性,今天就作一个简单的总结,希望对大家有点帮助。

        首先,数据库被黑的原因:

1、数据库root用户有开放远程连接。

2、root密码过于简单,是弱密码。

3、网站程序本身存在木马漏洞。

        第三点我们就不说了,所以其实被黑的原因基本就是root用户有开放远程连接,并且密码过于简单。

        我们做自己的小项目的时候部署在云服务器的数据库很多时候root用户是需要开放远程连接的,所以,防止被黑我们可以设置一个密码复杂度比较高的密码!!!比如这种:q1vieV0qO1DYVp7H。

        但是问题是密码的话我也不喜欢弄太复杂的记不住,那咋办? 其实,除了设置复杂的密码以外,这时候我们其实还可以通过限制ip访问来做到保护数据安全,简单粗暴。

         一、mysql自己的限ip访问方法

首先登陆mysql

取消掉任意ip都能访问为本地localhost才可以访问

use mysql;

UPDATE USER SET Host = 'localhost' where Host = '%';

flush privileges;

然后再创建创建一个专门用来远程用的账号并指定ip,授权(需要给哪个ip就创几个,有点麻烦哈哈。。。。)

CREATE USER 'root'@'119.137.52.210' IDENTIFIED BY '123456';

GRANT ALL ON *.*To root@'119.137.52.210'IDENTIFIED BY '123456' WiTH GRANT OPTION;

flush privileges;(执行这个指令,就生效啦,注意这里的@后面的ip写你自己需要允许访问的ip)

        二、使用云服务器自己的防火墙设置 使用这个就方便很多啦,我现在也是这么用的,以我用的滴滴云服务器为例~

添加一条安全组规则,端口填mysql的端口3306,授权对象填允许访问的ip 就欧克啦!需要允许哪些ip可以访问就添加几条安全组规则。

(个人博客小站:www.maoshi8.cn )

  • 3
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值