这件事已经过去一个月,我当时想看看自己之前随手买的100人民币服务器怎么样了。。毕竟之前mysql被黑客给锁了,还要给固定地址比特币才能解锁拿到mysql原来的数据,当然,我的mysql上啥都没。。。。
关于我买腾讯云服务器的事情是这样的:
一时心血来潮甲亢 -> 兴高采烈的买了云服务器 -> 云服务器吃灰 ->mysql被锁 ->偷偷被挖矿
好了,直接说mysql被锁的问题解决方案:修改mysql端口到一个自定义端口,mysql数据库密码改成高强度的。
关于偷偷被挖矿的事情:
表现就是cpu百分百高占用:
当时使用了top命令,发现高占用的程序时mysql,cpu应该是100,命令是一个奇怪的数字。我不是专业的运维,也是第一次看到这种情况,连忙检查了自己的mysql服务,发现mysql一切正常。
这就奇怪了,当时发现的这个程序到底是什么,为此我还专门查了mysql高占用解决方案。
通过top命令找到pid
通过命令
top -H -p mysql_pid
拿到占用多的线程
从这个表里查信息,找到对应的线程
select a.user,a.host,a.db,b.thread_os_id,b.thread_id,a.id processlist_id,a.command,a.time,a.state,a.info from information_schema.processlist a,performance_schema.threads b where a.id = b.processlist_id and b.thread_os_id=线程id;
然后把那个mysql线程干掉,或者分析那条sql,这样就是一个从top进程到mysql线程到sql的一整个排查流程。
当然,最后没有解决掉我的问题,因为我发现压根从mysql找不到那个线程,所以直接怀疑mysql进程有问题,应该是有狗子用mysql用户启动了一个进程,然后我以为是mysql服务器的进程,实际上是一个挖矿程序,好吧,破案了。
最后,我把那个占用高的进程咔嚓了。世界清净了。
最后的最后,我把mysql这个linux用户的密码修改成一个高强度的密码,就再也没有挖矿的事情。
综上,我发现在云服务器上,不管是勒索,还是挖矿,都跟mysql有关系,所以一定得做好安全防护,已知的就有,mysql数据库密码高强度;mysqlLinux用户密码高强度,mysql的端口号定一个别人不知道的。