centos系统中perl进程病毒占用大量网络流量导致网络瘫痪的问题分析及解决方案
故障现象:
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进程病毒占用大量网络流量导致网络瘫痪的问题分析及解决方案的更多相关文章
- 9.7 top:实时显示系统中各个进程的资源占用状况
top命令 用于实时地对系统处理器状态进行监控,它能够实时地显示系统中各个进程的资源占用状况.该命令可以按照CPU的使用.内存的使用和执行时间对系统任务进程进行排序显示,同时top命令还可以通过交互式 ...
- [linux]top命令详解-实时显示系统中各个进程的资源占用状况
简介 top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器. top显示系统当前的进程和其他状况,是一个动态显示过程,即可以通过用户按 ...
- 获取系统中所有进程&线程信息
读书笔记--[计算机病毒解密与对抗] 目录: 遍历进程&线程程序 终止进程 获取进程信息 获取进程内模块信息 获取进程命令行参数 代码运行环境:Win7 x64 VS2012 Update3 ...
- Linux 系统中僵尸进程
Linux 系统中僵尸进程和现实中僵尸(虽然我也没见过)类似,虽然已经死了,但是由于没人给它们收尸,还能四处走动.僵尸进程指的是那些虽然已经终止的进程,但仍然保留一些信息,等待其父进程为其收尸.配图源 ...
- Unix/Linux系统中僵尸进程是如何产生的?有什么危害?如何避免?
如题 Unix/Linux系统中僵尸进程是如何产生的?有什么危害?如何避免? 一个进程在调用exit命令结束自己的生命的时候,其实他并没有真正的被销毁,而是留下一个称为僵尸进程(Zombie)的数据结 ...
- CentOS系统中last命令的作用
CentOS系统中last命令的作用是显示近期用户或终端的登录情况,它的使用权限是所有用户.通过last命令查看该程序的log,管理员可以获知谁曾经或企图连接系统. 格式 last [—R] [—n] ...
- 如何在CentOS系统中安装配置SNMP服务
CentOS(Community Enterprise Operating System,中文意思是:社区企业操作系统)是Linux发行版之一,现在有一大部分服务器在使用此操作系统:SNMP(简单网络 ...
- 在Centos系统中基于PowerDNS和Poweradmin自建域名解析服务器替代DnsPod
本文讲述了我在Centos 7系统(其他版本的Centos未尝试)中基于PowerDNS和poweradmin自建域名解析服务器替代DnsPod的过程.通过本文所述方法,可以建立权威域名解析服务器的m ...
- 【转】Windows10下80端口被PID为4的System占用导致Apache无法启动的分析与解决方案
昨天刚更新了Windows10,总体上来说效果还是蛮不错的,然而今天在开启Apache服务器的时候却发现,Apache莫名其妙的打不开了,起初以为是权限的问题,于是使用管理员身份的控制台去调用命令ne ...
随机推荐
- HDU 3338 Kakuro Extension (网络流,最大流)
HDU 3338 Kakuro Extension (网络流,最大流) Description If you solved problem like this, forget it.Because y ...
- git branch 分支管理
在多人协作的情况下,master通常是稳定的分支.可以再建一些"develop","testing"等名称的分支.主管master的人做开发的话最好也建立自己的 ...
- C++中hpp的适用
本文第一部分转载百度百科,在此感谢百度.第二部分示例为独立编写. hpp,其实质就是将.cpp的实现代码混入.h头文件当中,定义与实现都包含在同一文件,则该类的调用者只需要include该hpp文件即 ...
- Python Numpy shape 基础用法(转自他人的博客,如涉及到侵权,请联系我)
Python Numpy shape 基础用法 shape函数是numpy.core.fromnumeric中的函数,它的功能是读取矩阵的长度,比如shape[0]就是读取矩阵第一维度的长度.它的输入 ...
- ubuntu14.04 桌面版/服务器版安装DevStack教程
官网安装教程链接:https://docs.openstack.org/developer/devstack/ 我在ubuntu14.04 LTS 桌面版/服务器版都安装DevStack成功后,在这里 ...
- Python全栈问答小技巧_2
Python全栈测试题(二) 作者:尹正杰 声明:答案如有偏差,欢迎指正!欢迎加入高级运维工程师之路:598432640 本文答题用的Python版本是:Python 3.5.2,请知晓! 1. 计算 ...
- Create ISO library over NFS for XEN server templates
Based on Ubuntu – Server – install NFS on Ubuntu – aptitude -y install nfs-kernel-server create a “ ...
- JVM总结(六):晚期(运行期)优化
这节我们总结一下JVM运行期的优化问题. JVM运行期优化 即时编译器(JIT) 编译对象与触发条件 编译对象 触发条件 编译过程 编译优化技术 JVM运行期优化 Java程序在运行的期间,可能会有某 ...
- 学习windows编程 day4 之视口和窗口
LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { HDC hdc; PAINTSTRU ...
- CodeChef Arithmetic Progressions
https://www.codechef.com/status/COUNTARI 题意: 给出n个数,求满足i<j<k且a[j]-a[i]==a[j]-a[k] 的三元组(i,j,k)的个 ...