故障现象:

1.系统在早上9点的时候非常慢,单台服务器占用流量很大,使交换机流量被占满,而连累挂在同一交换机上的其他应用也无法提供服务,或者速度非常慢
    2.通过查看进程发现大量的perl程序占用了大量的CPU,并且无法被kill掉
    3.通过查看网络设备的监控,发现网络带宽在8点20分左右被OA服务器所在的交换端口占满,拔掉该OA服务器的网线,网络恢复正常,重新插上系统瘫痪,可以断定问题出在该服务器上
    4.重启系统后恢复正常

防火墙日志

流量走势

临时解决办法:

1.将OA系统挂载在单独的交换机上,并且对该交换机连接OA的端口限速,这样可以保证OA不会占用过多的带宽
2.安装安全狗服务器版,找到了部分asp的程序(没有对asp过滤,里面有一句话木马,系统是PHP的)
3.启用硬件防火墙的防DDOS功能

咨询多方专家后给出的解决方案如下:

1.针对系统做优化(这样可以抵御少量的攻击)
2.够买专业的防火墙设备
3.把系统迁移到云服务器上,用云来清洗流量
4.在系统发生故障时抓包,对包进行分析
# tcpdump -i em1 -w > /tmp/em120160317
5.使用nethops进行流量定位,找到引发流量对应的程序

# yum -y install nethogs

Loaded plugins: fastestmirror, refresh-packagekit
Loading mirror speeds from cached hostfile
 * base: centos.ustc.edu.cn
 * extras: ftp.sjtu.edu.cn
 * updates: ftp.isu.edu.tw
Setting up Install Process
No package nethogs available.
Error: Nothing to do

# yum  install epel-release -y

# nethops em1

真实的解决方法:

通过咨询其他同事,之前在北京的应用windows系统碰到类似的情况,是病毒引起的,杀毒后解决了问题,但当时可能被杀毒软件误删了操作系统文件,需要谨慎
后来搜索了下还真有linux下的杀毒软件
 
此次我们选择了nod32 linux x64版进行杀毒,查杀出了恶意木马,经过几天的观察发现没有再次出现服务器大量带宽被占用的情况,该问题暂时得到缓解

为什么选nod32,是因为之前在上一家公司任职的时候也碰到类似2003系统占用大量带宽使公司员工都上不了网的情况,用nod32杀掉蠕虫后解决问题

具体安装步骤,请参考前面的博文:
centos系统安装nod32杀毒软件并通过xmanager进行远程管理

安装需要输入用户名及注册码,输入后并升级到最新版本的病毒库
通过安装nod32 linux 64位版,升级病毒库以后,确实干掉了进程中出现的perl脚步,并且运行的用户也对上了,该事件暂告一段落

注意:
需要测试,不要直接在服务器运行,中间碰到了很多问题,测试的时候没有碰到类似问题(硬件不一样,测试环境是联想的PC,生产环境的服务器是dellr720,这个需要引起注意,下班后操作,并且需要做好备机,避免出现致命问题能及时恢复)

centos系统中perl进程病毒占用大量网络流量导致网络瘫痪的问题分析及解决方案的更多相关文章

  1. 9.7 top:实时显示系统中各个进程的资源占用状况

    top命令 用于实时地对系统处理器状态进行监控,它能够实时地显示系统中各个进程的资源占用状况.该命令可以按照CPU的使用.内存的使用和执行时间对系统任务进程进行排序显示,同时top命令还可以通过交互式 ...

  2. [linux]top命令详解-实时显示系统中各个进程的资源占用状况

    简介 top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器. top显示系统当前的进程和其他状况,是一个动态显示过程,即可以通过用户按 ...

  3. 获取系统中所有进程&线程信息

    读书笔记--[计算机病毒解密与对抗] 目录: 遍历进程&线程程序 终止进程 获取进程信息 获取进程内模块信息 获取进程命令行参数 代码运行环境:Win7 x64 VS2012 Update3 ...

  4. Linux 系统中僵尸进程

    Linux 系统中僵尸进程和现实中僵尸(虽然我也没见过)类似,虽然已经死了,但是由于没人给它们收尸,还能四处走动.僵尸进程指的是那些虽然已经终止的进程,但仍然保留一些信息,等待其父进程为其收尸.配图源 ...

  5. Unix/Linux系统中僵尸进程是如何产生的?有什么危害?如何避免?

    如题 Unix/Linux系统中僵尸进程是如何产生的?有什么危害?如何避免? 一个进程在调用exit命令结束自己的生命的时候,其实他并没有真正的被销毁,而是留下一个称为僵尸进程(Zombie)的数据结 ...

  6. CentOS系统中last命令的作用

    CentOS系统中last命令的作用是显示近期用户或终端的登录情况,它的使用权限是所有用户.通过last命令查看该程序的log,管理员可以获知谁曾经或企图连接系统. 格式 last [—R] [—n] ...

  7. 如何在CentOS系统中安装配置SNMP服务

    CentOS(Community Enterprise Operating System,中文意思是:社区企业操作系统)是Linux发行版之一,现在有一大部分服务器在使用此操作系统:SNMP(简单网络 ...

  8. 在Centos系统中基于PowerDNS和Poweradmin自建域名解析服务器替代DnsPod

    本文讲述了我在Centos 7系统(其他版本的Centos未尝试)中基于PowerDNS和poweradmin自建域名解析服务器替代DnsPod的过程.通过本文所述方法,可以建立权威域名解析服务器的m ...

  9. 【转】Windows10下80端口被PID为4的System占用导致Apache无法启动的分析与解决方案

    昨天刚更新了Windows10,总体上来说效果还是蛮不错的,然而今天在开启Apache服务器的时候却发现,Apache莫名其妙的打不开了,起初以为是权限的问题,于是使用管理员身份的控制台去调用命令ne ...

随机推荐

  1. display position 和float的作用和关系

    1.传统布局由这三者构成. 2.position设为absolute,那么display一定是block,因此对于span来说,就可以设置高和宽了. 3.position为relative ,那么fl ...

  2. ReactNative系列组件用法(一)

    首先我们来认识view 改变一些特性,再来看看项目的变化 我们新增flex布局的一些属性,再来看看项目的变化 接下来我们来看看如果获取屏幕的分辨率 关于图片的用法,reactNative这里也是很神奇 ...

  3. myeclipse 怎么安装与激活

    摘录自:http://blog.csdn.net/u012318074/article/details/71310553 第一步:安装完成后不要运行MyEclipse 第二步:下载对应的破解文件 第三 ...

  4. UESTC - 1172 三句话题意

    题目链接 记一个集合的gcd为该集合内所有数的最大公约数, 求一个给定集合的非空子集的gcd的k次方的期望~ Input 第一行有一个数t,表示数据组数 接下去每组数据两行,第一行两个数n,k(0 & ...

  5. Nginx动态添加模块

    前言 有时候要使用已安装好的Nginx的功能时,突然发现缺少了对应模块,故需对其进行动态添加模块. 操作 # 查看已安装模块 [root@kazihuo ~]# nginx -V nginx vers ...

  6. vscode插件和快捷键

    目前用的挺多的一些编辑器有webstorm,vscode,Atom,HBuilder等等 今天来说说vscode Visual Studio Code (简称 vscode) 是一款免费开源的现代化轻 ...

  7. 个股和股票池的beta系数的估算

    个股的beta系数的估算 代码 def test_gg_beta(symbol='000895.sz', start='2018-01-01', plot_price=True, align_to=' ...

  8. VSCode 拓展插件推荐

    想让VS code干活快起来,插件少不了,开始吧: 快捷键:Ctrl+Shift+X打开插件搜索安装即可 (安装的插件通常会保存在这个目录:C:\Users\你的系统登录用户如administrato ...

  9. Hibernate or 的用法

    转自baidu estrictions.or(Restrictions.like(),Restrictions.or(Restrictions.like,........))里面的or可以无限加的.还 ...

  10. 前端 - Ajax (1)

    Ajax 主要作用 用于隐式提交,有别于input 提交时不会跳转/刷新页面. 前端: html 代码:(id) <p> <input id="user" typ ...