linux服务器并webbench攻击pg电子游戏试玩平台网站的解决方案 【百科全说】-pg电子游戏试玩平台网站

腾讯视频/爱奇艺/优酷/外卖 充值4折起

首先我来说一下这个被攻击的网站的大概部署状况.这个网站主要是nginx mysql php,有两台服务器分别放了web和数据库,web只对外开启了80端口操作系统是centos,而数据库服务器则在内网,攻击者的手段其实很简单,用webbench网站压力测试工具发送大量的请求到服务器,之前的时候发送每一个请求之后数据库就会相应,然后读取内容最终显示,造成数据库和web之间大量的交换数据,甚至导致mysql达到连接数上限,请求被拒绝,而且攻击者时间挺多的,他不停地换浮动ip,因此直接用防火墙封锁ip没意义.

刚开始我的做法是,用php取得攻击者的agent头,判断是不是webbench来访,如果是就die掉,不在请求数据库,确实挺有效,数据库不会再超出限制了,但是对方频繁的发送请求过来,导致网络带宽被严重消耗,看来得想想其他办法,最终想到了一个解决方法且实际测试发现可行,因此分享给大家,其实我的做法原理很简单:用php取得用户agent头判断是否是webbench来源,如果是的话就在服务器上写一个shell文件,这个文件的内容就是封锁ip的规则,

然后再用chmod函数修改一下这个文件让其可执行,再用cron服务读取这个文件执行,把ip封锁掉,整个过程全部自动化完成不需要人为干预,另外在封锁的时候给我发一封email通知我有个倒霉蛋被干掉了,这样就行了.

具体实现代码如下:

if(isset($_server['http_user_agent']) and trim($_server['http_user_agent'])!='') {

$_server['http_user_agent']=strtolower($_server['http_user_agent']);

if(stristr($_server['http_user_agent'],'webbench')!==false) {

$p='/home/www/webbench.sh';

$_server['remote_addr']=isset($_server['remote_addr']) ? $_server['remote_addr'] : 'unknow';

file_put_contents($p,"#!/bin/bashniptables -i input -s {$_server['remote_addr']} -j drop;n",lock_ex);

chmod($p,0755);

chown($p,'www');

function smail($to,$tit,$msg) {

if(filter_var($to,filter_validate_email)==''){

throw new exception('邮箱地址错误!');

}

$tit='=?utf-8?b?'.base64_encode($tit).'?=';

$msg = str_replace("n.","n..",$msg); //windows如果在一行开头发现一个句号则会被删掉,要避免此问题将单个句号替换成两个句号

return mail($to,$tit,$msg,'from:no-reply@adm.bossadm.com.tw'."n".'content-type:text/html;charset=utf-8');

}

smail('see7di@gmail.com','【webbench又开始了t】!',date('y-m-d h:i:s',time())." {$_server['remote_addr']}");

header('location:http://127.0.0.1');

die();

}

}

后来我又做了一次调整,把发email的部份写入了shell文件内,不再用php发email,因?槟腔峁啾?愕男畔?把上边的代码修改成:

if(isset($_server['http_user_agent']) and trim($_server['http_user_agent'])!='') {

$_server['http_user_agent']=strtolower($_server['http_user_agent']);

if(stristr($_server['http_user_agent'],'webbench')!==false) {

$p='/home/www/webbench.sh';

$_server['remote_addr']=isset($_server['remote_addr']) ? $_server['remote_addr'] : 'unknow';

file_put_contents($p,"#!/bin/bashniptables -i input -s {$_server['remote_addr']} -j drop;necho "{$_server['remote_addr']} - `date`" | mail -s "webbench-www.downcc.com" see7di@gmail.comn",lock_ex);

chmod($p,0755);

chown($p,'www');

header('location:http://127.0.0.1');

die();

}

}

12/11 20:45
rootkit是一种恶意软件,通常和木马等其他恶意程序一起结合使用,而linux是其重要的攻击对象,那么linux被rootkit攻击后该怎么办呢?下面小编就给大家介绍下linux服务器被rootkit攻击后该如何处理。 it行业发展到现在,安全问题已经变得至关重要,从最近的“棱镜门”事件中,折射出了很多安全问题,信息安全问题已变得刻不容缓,而做为运维人员,就必须了解一些安全运维准则,同时,要保护自己所负责的业务,首先要站在攻击者的角度思考问题,修补任何潜在的威胁和漏洞。 下面通过一
03/13 12:12
以下的文章主要描述的是防范四种级别攻击确保linux服务器安全,如果你对防范四种级别攻击确保linux服务器安全心存好奇的话,以下的文章将会揭开它的神秘面纱.随着linux企业应用的不断扩展. 有大量的网络服务器都在使用linux操作系统.linux服务器的安全性能受到越来越多的关注. 这里根据linux服务器受到攻击的深度以级别形式列出,并提出不同的pg电子游戏试玩平台网站的解决方案. 随着linux企业应用的扩展,有大量的网络服务器使用linux操作系统.linux服务器的安全性能受到越来越多的关注,这里根据linu
11/05 13:19
一、系统安全记录文件 操作系统内部的记录文件是检测是否有网络入侵的重要线索。如果您的系统是直接连到internet,您发现有很多人对您的系统做telnet/ftp登录尝试,可以运行”#more /var/log/secure | grep refused”来检查系统所受到的攻击,以便采取相应的对策,如使用ssh来替换telnet/rlogin等。 二、启动和登录安全性 1.bios安全 设置bios密码且修改引导次序禁止从软盘启动系统。 2.用户口令 用户口令是linux安全的一个基本起点,很多
04/16 23:27
随着开源系统linux的盛行,其在大中型企业的应用也在逐渐普及,很多企业的应用服务都是构筑在其之上,例如web服务、数据库服务、集群服务等等。因此,linux的安全性就成为了企业构筑安全应用的一个基础,是重中之重,如何对其进行安全防护是企业需要解决的一个基础性问题,基于此,本文将给出十大企业级linux服务器安全防护的要点。 1、强化:密码管理 设定登录密码是一项非常重要的安全措施,如果用户的密码设定不合适,就很容易被破译,尤其是拥有超级用户使用权限的用户,如果没有良好的密码,将给系
08/21 10:51
大家都认为linux 默认是安全的,我大体是认可的(这是个有争议的话题)。linux默认确实有内置的安全模型。你需要打开它并且对其进行定制,这样才能得到更安全的系统。linux更难管理,不过相应也更灵活,有更多的配置选项。 对于系统管理员而言,让产品的系统更安全,免于骇客和黑客的攻击,一直是一项挑战。本文将介绍25个有用的技巧和窍门 ,帮助你让linux系统更加安全。希望下面的这些技巧和窍门可以帮助你加强你的系统的安全。 1. 物理系统的安全性 配置bios,禁用从cd/dvd、
08/24 23:07
大家都认为linux 默认是安全的,我大体是认可的(这是个有争议的话题)。linux默认确实有内置的安全模型。你需要打开它并且对其进行定制,这样才能得到更安全的系统。linux更难管理,不过相应也更灵活,有更多的配置选项。 对于系统管理员而言,让产品的系统更安全,免于骇客和黑客的攻击,一直是一项挑战。本文将介绍25个有用的技巧和窍门 ,帮助你让linux系统更加安全。希望下面的这些技巧和窍门可以帮助你加强你的系统的安全。 1. 物理系统的安全性 配置bios,禁用从cd/dvd、外部设备、软驱启
07/05 01:55
现在很多朋友都选择了linux服务器下配置lnmp(linux nginx mysql php),这里分享下lnmp安装与配置方法,需要的朋友可以参考下 nginx与apache、lighttp性能综合对比,如下图: 注意:关闭rpm默认安装的apache和mysql 1.准备php函数的rpm包 yum -y install gcc gcc-c autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-deve
04/09 04:07
linux是服务器操作系统中最常用的操作系统,因为其拥有高性能、高扩展性、高安全性,受到了越来越多的运维人员追捧。但是针对linux服务器操作系统的安全事件也非常多的。攻击方式主要是弱口令攻击、远程溢出攻击及其他应用漏洞攻击等。我的vps在前几天就遭受了一次被恶意利用扫描其他主机ssh弱口令安全问题。以下是我针对此次攻击事件,结合工作中linux安全事件分析处理办法,总结linux安全应急响应过程中的分析方法。 一、分析原则 1.重要数据先备份再分析,尽量不要在原来的系统中分析; 2.已经被入侵
09/02 20:27
牢记以下这七点会让你的linux服务器变得更安全 图1:运行中的服务. 安装所需的服务 如果你打算运行一台服务器,可能会想"我有来自linode的40gb固态硬盘(ssd)存储系统,于是我可以安装想要安装的任何服务."没错,你的地盘你作主:可以在服务器上安装任意软件.不过,别犯想当然的毛玻连最固若金汤的服务器也会因有人钻了在该服务器上运行的任何未打补丁或易受攻击的软件组件的空子而被劫持. 所以,头一条规则就是让你的服务器尽量精简.只安装你确实需要的那些程序包.要是有不需要的程序包,那就
网站地图