案例描述

  由于最近我在重构之前的APP,需要和server端进行数据交互,发现有一个现象,那么就是隔1~2天总会发生获取数据超时的问题,而且必须要重启服务器才能解决。早在之前,我有留意到这个问题,但是由于这个服务器目前只有我测试的时候才有访问,其他的途径的数据交互几乎没有,但是这次必须要把这个问题解决了,因为APP我肯定要上线的。

按理分析

  服务器是基于阿里云的 Linux-CentOs 6.5,由nginx解析,首先登陆阿里云官网去查看ECS云服务器的运行情况,显示的是运行中,和以往一样,费用没到期,然后在浏览器中打开官网,一样是访问不了,当时第一个想法就是带宽过载,为什么不是代码问题呢?因为不能访问是周期性的问题,肯定不是代码问题。为了确认想法,去阿里云发了次工单,请求下阿里的技术人员的帮助。

  阿里的大牛回复和我所想的一样,这时候就是进终端进一步解决了。我一般使用 XShell 软件来管理linux服务器终端的,由于外部都无法访问,那么XShell也就无法远程了,的确如此,带宽跑满,哪怕是远程终端都是不可能的。这时候由从官网进入终端。

  登陆后,先用命令 sar -n DEV 1 1 查看下网卡流量的数据包和比特流等情况,1 秒 取一次值,发现是震惊的。

  首先eth0 是内网卡,eth1是外网, rxpck 这个是接收的数据包,txpck 是发出的数据包,rxkB 是接收的字节, txkB 是发出的字节。发现公网在大量向外发数据包,且我上面说到,这个服务器目前只有我测试APP才有请求过来,再怎么发也不会达到19万多/s,还有这个数据会变的,有时候达到 20 万。是不是感觉有点 DDOS 的感觉,不过,rxpck 接收的并不多,这是DDOS 的几率有点低,初步怀疑是有恶意程序在大量发包。

  为了看看 eth1 到底发了多少,输入 ifconfig 回车,我擦,2点多 T 啊。

  为了弄清楚是目前运行的线程有哪些,我打算采用了 nethogs 这个工具,它可以监控进程实时的流量,可悲剧的是,在这之前没安装它,然后就打算当场安装,然而,当我采用 yum install nethogs 安装的时候,发现一直处于超时(time out)的情况,ping 了下百度,发现延时很高。果然,肯定受当前的情况影响。

  既然查不了线程的实时流量,只能查看当前的进程了,输入 ps -ef ,看到有一个名为 vcers 的程序占用 CPU 利用率高达 34% +

  ls 一下,在 root 目录,再 find -name “vcers” ,发现只有这么一个

解决问题

  猜想,可能是它在大量发包, 于是直接  kill -TERM PID号 杀掉了 vcers 的进程,再 sar -n DEV 1 1 看下,恢复正常

  刷新下APP,有数据了,再打开下官网链接,正常访问。赶紧下载了 nethogs 以防万一,最后再打印下 进程信息,确认 vcers 没再运行, 下次再出现的话,若还过载,就彻底删除 vcers 的可运行程序。

真实记录疑似Linux病毒导致服务器 带宽跑满的解决过程的更多相关文章

  1. Linux启动ftp服务器530 Permission denied解决方法(已试,行)

    Linux启动ftp服务器530 Permission denied解决方法重新在虚拟机下安装了linux.现在我想启动linux自带的ftp服务器:#service  vsftpd  start . ...

  2. LINUX服务器带宽跑满、负载过高问题排查

    1.centos 安装流量监控iftop apt-get  install iftop -y 2.查看网卡名称 ifconfig 3.查看端口占用情况 iftop -i 网卡名称 -P 执行 nets ...

  3. 腾讯云centos服务器不能登录的解决过程

    在腾讯云上申请了一个centos服务器,最基础的配置,1 核 1 GB 1 Mbps,50G硬盘,主要用来测试程序,练手用.在上面配置了一个mysql数据库,一直使用都没什么问题. 1 问题描述 过了 ...

  4. 记录一次linux线上服务器被黑事件

    1.原因:本来在家正常休息了,我们放在上海托管机房的线上服务器突然蹦了远程不了,服务启动不了,然后让上海机房重启了一次,还是直接挂了,一直到我远程上才行. 2.现象:远程服务器发现出现这类信息 Hi, ...

  5. 记录一次服务器CPU 100%的解决过程

    昨天客户反馈业务系统很慢,而且偶尔报错. 查看nginx日志: [root@s2 nginx]# tail log/error.log 2017/03/14 12:54:46 [error] 1704 ...

  6. linux下postgres未能正常启动的解决过程

    转载:http://www.cnblogs.com/starRebel/p/7892214.html 起因是一次linux服务器重启后,postgres没有起来,手动找原因. 1. 直接在命令行打po ...

  7. J2EE Oa项目上传服务器出现的乱码解决过程

    (= =)搞了许久觉得有必要记下来.. 由于我本地的mysql都设置好了,但是服务器的又不能去改它 毕竟还有其他人要用- -: 所以只能是我建的时候去设置一下了, 首先先建数据库 ,表;; creat ...

  8. 再谈腾讯云centos服务器不能登录的解决过程

    上篇文章谈到腾讯云centos服务器不能登录,通过查看监控信息,cpu使用过高,再腾讯云页面使用VNC方式直接登录,然后根据提示信息,关闭导致内存溢出的进程,从而解决问题. 1 问题再现 昨天刚解决了 ...

  9. 疑似CPU或者内存故障导致进程崩溃

    我们有一个服务跑在微软云的所有宿主机上.最近发现某一台机器上该服务进程持续崩溃.崩溃原因是访问了一个无效指针,对应的代码如下 serviceListIniBuffer.AppendF("Se ...

随机推荐

  1. 【每日一linux命令4】常用参数:

     下面所列的是常见的参数(选项)义: --help,-h                              显示帮助信息 --version,-V                        ...

  2. 简单入门canvas - 通过刮奖效果来学习

    一 .前言 一直在做PC端的前端开发,从互联网到行业软件.最近发现移动端已经成为前端必备技能了,真是不能停止学习.HTML5新增的一些东西,canvas是用的比较多也比较复杂的一个,简单的入门了一下, ...

  3. 高性能IO模型浅析

    高性能IO模型浅析 服务器端编程经常需要构造高性能的IO模型,常见的IO模型有四种: (1)同步阻塞IO(Blocking IO):即传统的IO模型. (2)同步非阻塞IO(Non-blocking  ...

  4. 标准产品+定制开发:专注打造企业OA、智慧政务云平台——山东森普软件,交付率最高的技术型软件公司

    一.公司简介山东森普信息技术有限公司(以下简称森普软件)是一家专门致力于移动互联网产品.企业管理软件定制开发的技术型企业.公司总部设在全国五大软件园之一的济南齐鲁软件园.森普SimPro是由Simpl ...

  5. shell变量

    定义变量 定义变量时,变量名不加美元符号($),如: variableName="value" 注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言都不一样.同时,变量名 ...

  6. Hawk 5.1 数据导入和导出

    除了一般的数据库导入导出,Hawk还支持从文件导入和导出,支持的文件类型包括: Excel CSV(逗号分割文本文件) TXT (制表符分割文本文件) Json xml Excel 目前来看,Exce ...

  7. gitHub使用入门和github for windows的安装教程

    在看这篇教程之前我想大家也在搜索怎样使用gitHub托管自己的项目,在使用gitHub之前我也遇到过各种问题,在网上我也搜索了很多,但总觉得网上搜索到的东西很多很杂,有的根本不知道是在表达什么.在这过 ...

  8. C# 数组的交集、差集、并集

    C# 数组的交集.差集.并集 工作中经常会用这方面的知识来检查那些字段是必须输入的,那些是禁止输入. using System; using System.Collections.Generic; u ...

  9. addTwoNumbers

    大神的代码好短,自己写的120多行=_= 各种判断 ListNode *f(ListNode *l1, ListNode *l2) { ListNode *p1 = l1; ListNode *p2 ...

  10. CSS margin详解

    以下的分享是本人最近几天学习了margin知识后,大有启发,感觉以前对margin的了解简直太浅薄.所以写成以下文章,一是供自己整理思路:二是把知识分享出来,避免各位对margin属性的误解.内容可能 ...