案例描述

  由于最近我在重构之前的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. Linq表达式、Lambda表达式你更喜欢哪个?

    什么是Linq表达式?什么是Lambda表达式? 如图: 由此可见Linq表达式和Lambda表达式并没有什么可比性. 那与Lambda表达式相关的整条语句称作什么呢?在微软并没有给出官方的命名,在& ...

  2. 用CIL写程序:你好,沃尔德

    前言: 项目紧赶慢赶总算在年前有了一些成绩,所以沉寂了几周之后,小匹夫也终于有时间写点东西了.以前匹夫写过一篇文章,对CIL做了一个简单地介绍,不过不知道各位看官看的是否过瘾,至少小匹夫觉得很不过瘾. ...

  3. 运用php做投票题,例题

    要求大概是这样的,有一个题目,题目下面是复选框,要求点完复选框提交后会变成进度条,各选项的进度条百分比,和投票数量 首先还是要在数据库建两张表,如下: 要完成这个题目,需要建两个页面 <!DOC ...

  4. WebSocket - ( 一.概述 )

    说到 WebSocket,不得不提 HTML5,作为近年来Web技术领域最大的改进与变化,包含CSS3.离线与存储.多媒体.连接性( Connectivity )等一系列领域,而即将介绍的 WebSo ...

  5. .NET面试题集锦②(Part 二)

    一.前言部分 文中的问题及答案多收集整理自网络,不保证100%准确,还望斟酌采纳. 1.实现产生一个int数组,长度为100,并向其中随机插入1-100,并且不能重复. ]; ArrayList my ...

  6. RSA算法

    RSA.h #ifndef _RSA_H #define _RSA_H #include<stdio.h> #include<iostream> #include<mat ...

  7. jquery-treegrid树状表格的使用(.Net平台)

    上一篇介绍了DataTable,这一篇在DT的基础之上再使用jquery的一款插件:treegrid,官网地址:http://maxazan.github.io/jquery-treegrid/ 一. ...

  8. Android之SharedPreferences数据存储

    一.SharedPreferences保存数据介绍 如果有想要保存的相对较小键值集合,应使用SharedPreferences API.SharedPreferences对象指向包含键值对的文件并提供 ...

  9. SSH免手动输入密码和设置代理

    通过使用sshpass将密码写入命令里,直接执行,免去手动密码输入的步骤命令如下: sshpass -p password_abc ssh user_abc@ssh_host -p ssh_port ...

  10. Hibernate 系列 学习笔记 目录 (持续更新...)

    前言: 最近也在学习Hibernate,遇到的问题差不多都解决了,顺便把学习过程遇到的问题和查找的资料文档都整理了一下分享出来,也算是能帮助更多的朋友们了. 最开始使用的是经典的MyEclipse,后 ...