pyright © 1999-2020, CSDN.NET, All Rights Reserved
专业成都网站建设公司,做排名好的好网站,排在同行前面,为您带来客户和效益!成都创新互联公司为您提供成都网站建设,五站合一网站设计制作,服务好的网站设计公司,成都做网站、网站设计负责任的成都网站制作公司!
运维
打开App
登录
const_qiu
关注
服务器中毒了,无法登陆,开启拷贝恢复之路 原创
2021-03-25 11:57:09
const_qiu
码龄8年
关注
服务器中毒了,无法登陆,开启拷贝恢复之路
如果不太想看那么多废话,可以直接跳第10点看解决方案
首先,不得不说,这是一个悲伤的故事。客户几年前的一个项目,开发都找不到人了,这几天突然反馈小程序打不开,后台系统也打不开。然后找到我,开始排查。
使用的是腾讯云服务器,登录控制台后,检查了一下cpu和内存状态,发现近期几乎都是99+%,怀疑是被攻击了
系统是centos7.2,尝试通过ssh 22端口远程访问服务器,一直提示超时
检查安全组,发现端口全部处于开放状态,这~简直就是裸奔呀
先简单配置了下安全组,仅开放80 443,22端口限制ip。再次尝试,还是超时登录不上
感觉要重启,先用客户给的网站地址尝试打开,显示的是nginx默认页,看来是用了nginx代理,后台服务说是java,我自己是java开发,所以如果能重启成功,重新启服务应该还是行得通的
开始重启, 然后等待了大概5-10分钟才重启完成,腾讯云是不是太垃圾了,还是说因为被攻击原因。
再次尝试远程登录,然而现实是残酷的,依旧是提示超时,检查安全组配置也是没有问题,期间还尝试了重置密码,也依然不行,心态崩了。找腾讯云售后技术~~
提交工单,害怕数据丢失,云盘备份了个快照,其实应该第一步就备份块快照的,不过都一样,备份还是需要的,虽然没用到。
工单反馈还是挺快的,不过排查了一中午,技术跟我说:你的系统我们尝试修复,但是发现原因是被抓住系统漏洞,然后被攻击中毒了。然后他网上也查了资料,跟我这现象一样,网上有解决方案,问我要不要按这个方案执行,如果成功,那就可以,如果失败,那可能要考虑做下一步处理(备份、重装啥的)。听完,心态又炸了,原来腾讯云技术也要网上查资料的呀,然后感觉后果似乎比较严重。但是只能答应说先按网上方案实施
果然意料之中,修复失败。然后他推荐了最后一个 方案:
腾讯云工程师2021-03-23 15:27:24
您好:
与您电话沟通,这边为您同步下问题的处理进展。
【问题描述】
linux服务器登录不上
【处理进展】
1、您授权后这边使用VNC登录后如下报错:
![报错图片地址]()
2、您云服务器存在安全威胁
![威胁列表图片地址]()
3、这边进入救援后,chroot时候如下报错
ERROR: ld.so: object '/usr/local/lib/libs.so' from /etc/ld.so.preload cannot be preloaded: ignored
![网上查询报错解决方案]()
尝试为您修复,并没有修复成功。
【处理建议】
您表示系统盘有重要数据需要拷贝,如下操作。
1.先将云服务器制作成自定义镜像,然后再购买一块云硬盘(此云硬盘必须大于系统盘的容量,自定义镜像是为了预防万一)
制作镜像:
2.将有问题的云服务器进行关机(在关机的状态下才能拷贝数据)
3.在CVM控制台使用【拷贝系统盘数据】功能将系统盘的数据拷贝到云硬盘(拷贝时间比较长,请耐心等待)
大图
4.当数据拷贝完成后,先购买一台按量计费的云服务器
5.把云硬盘挂载至新购买的按量计费云服务器,检查里面的数据是否完整(这步一定要做,核实数据是否存在)
6.当核实数据没有问题后,将云硬盘从按量计费云服务器卸载下来,并销毁按量计费云服务器
7.然后将有问题的云服务器进行重装系统
8.重装系统完成后挂载云硬盘即可读取里面的数据
温馨提示:重装系统后,服务器系统盘内的所有数据将被清除,恢复到初始状态;服务器数据盘的数据不会丢失,但需要手动挂载才能使用。
详细操作指引如下:
感谢您对腾讯云的支持,祝您生活愉快。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
拿到方案,我问技术能不能我给他权限,让他帮忙操作下,我是真的没经验,我只是个小菜开发,不过他说不能这样,没办法,只能自己上了。
解决过程
1.先将云服务器制作成自定义镜像,然后再购买一块云硬盘
镜像我觉得可以不用,除非你想保留现场,但是这系统都已经被攻击了,没必要。可以直接购买一块云硬盘,就是在控制台-云硬盘,点击下新增,选择跟你现有云盘配置一样的就行,然后选择按量计费,费用其实就是几分钱一个小时,用完销毁就行
购买数据盘
2.将有问题的云服务器进行关机(在关机的状态下才能拷贝数据).
这就不解释了直接关机
3.在CVM控制台使用【拷贝系统盘数据】功能将系统盘的数据拷贝到云硬盘(拷贝时间比较长,请耐心等待)
这一步按下面操作完成后就可以把中毒的服务器云盘数据拷贝到我们新买的云盘上,然后按后面的操作挂载到服务器后就可以读取到我们的数据,然后拷贝了
拷贝系统盘数据
4.当数据拷贝完成后,先购买一台按量计费的云服务器
这一步跟买云盘一样,就是新买一台临时服务器,配置最低的就行,因为就是为了挂载云盘拷贝数据用的。选择和原服务器和云盘同一个地区的,然后带宽调到最高,这样下载数据会很快,选择按量收费,按量是按流量收费,所以带宽高点不用担心费用太高,反而下载速度会更快
5.把云硬盘挂载至新购买的按量计费云服务器,检查里面的数据是否完整(这步一定要做,核实数据是否存在)
这里首先也是简单配置下安全组吧,可以临时开放22端口保证可以远程访问
挂载就在云盘列表,有个更多按钮,然后点击一下挂载,挂载到我们新购的临时服务器
挂载成功后,其实你会发现服务器还是没有数据的,因为还得登录远程窗口手动配置下才能成功
两个命令:
fdisk -l
mount /dev/vdb1 /mnt/
框住的
6. 当核实数据没有问题后,将云硬盘从按量计费云服务器卸载下来,并销毁按量计费云服务器
这一步我觉得腾讯云说的太简单了,其实这一步才是关键,当我们完成上面的挂载后,就能在/mnt目录看到我们原来服务器云盘的数据了,这里我大概列一下我拷贝的文件和目录
nginx 配置,通过nginx配置可以看到我们的项目域名、项目关联文件目录、一些证书文件
项目源文件,由于之前项目源码我这边没有,所有直接把这个文件拷出来,然后解压缩还能看到数据库相关配置
项目图片目录,通过nginx.conf看到项目的图片啥文件竟然也存在服务器,所以还得拷贝这个目录文件
redis 配置,通过项目源文件看到还有redis配置,而且是无密码登录,所以等会重装后还得安装配置redis无密码登录。本来想设置个密码的,然后发现源码还想不支持读密码,所以放弃了。只是关闭了外网访问
项目源文件是jar包,所以java环境就正常搭建就好
数据库文件
*这是重中之中了,通过源文件发现数据库用的也是本地mysql数据库,而且还是mysql5.5。说实话这一步我有点不知道怎么恢复数据,但是这一步没完成,上面的没有任何意义。
我的想法是,我物理文件肯定是有,那通过物理文件还是有办法恢复的,所以先把数据库的目录我整个压缩拷贝了一份,接着就开始百度,但是觉得答非所闻,没办法了,只能求助之前一个dba同事。
同事真的很热心,这里感谢一下我的这位dba(清华)同事,跟他大概说了下情况,然后mysql版本和数据库目录文件发给他,很快他“轻轻松松”就恢复了,专业的果然就不一样。这个过程我这里就不详细描述了,后面打算再写个文章复盘一下,大致过程就是,拷贝data目录,然后找台正常的服务器,修改一下data映射配置,修改下目录权限,然后启动mysql拉一下数据,然后导出来就可以。
7. 然后将有问题的云服务器进行重装系统
到这里基本拷贝工作都完成了,然后就是重装系统,重新按上面的项目配置要求重新搭建启动一下服务就行
8. 重装系统完成后挂载云硬盘即可读取里面的数据
至此,我就成功完成了服务恢复,最后还是很感谢过程提供服务和技术支持的所有人。
手机游戏服务器搭建你可以直接组腾讯云或者阿里云的游戏服务器,服务器搭建很简单,配置相关参数,提交相关内容就可以了。
腾讯的没用过,用的阿里的,但是备案问题一般跟服务器没关系哦,不是他们说的算