看标题就有点霸气侧漏的感受,哈哈!php
开篇以前我先讲一件发生在咱们身边的事情,记得不久以前国内大名鼎鼎的CSDN帐号泄露一案吗?这一泄露大概有600万会员的我的资料以及密码被人拿走了(详情可见http://tech.qq.com/a/20111221/000485.htm),这批资料对于那些别有用心的人来讲实在太宝贵了,据统计80%的人在各个网站上的登陆ID和密码是相同的,有没有想过若是这些人拿着这些个资去猜想其余网站的登陆会出现什么情况呢?其危害之大不言而喻.linux
那么到底是什么缘由致使CSDN个资泄露的呢?据业内人士透露,是由于CSDN自家的人把会员个资压缩以后放在了网站目录里,被他们给猜想到了,而后直接给下再回去的,是否是听起来很扯呢!其实一点都不扯,不少程序员都会犯这样的错,这绝非偶然,请看下边的图片.nginx
上图中的内容是我用PHP捕捉到的404错误,每当发生404错误时,PHP就会自动给我发送Email告知我下边的详情:程序员
看吧,对方的意图很明显,就是要猜想个人网站上是否有忘记删除的压缩文件,若是我真的忘记删除压缩文件的话,恐怕CSDN的事情就会再次重演了.不过不说的是对方的猜想工具真的挺好用的,在短期内发送大量的猜想请求到个人服务器,这不但会浪费个人网络带宽,还会由于不停发送email拖慢服务器,最可怕的是若是一旦被对方猜对了,那么危害就不言而喻了.shell
对于如此宵小之辈有没有惩治的措施呢?方法固然是有的,若是没有解决办法我还在这里废这么多话还不得被你们生吞活剥了:) 其实最简单的办法就是封锁对方的IP,一旦发现这种猜想行为当即果断封锁对方的IP,或许你会说对方是浮动ip,从新拨号ip就变了,其实这一点我也有想到,最简单的作法就是对方换10个ip就封10个,换100个封100个.只要他还尝试猜想下去就封他当前的IP,这样一来除非他用的软件可以实现立刻断线重拨更换IP,不然无论他的猜想软件有多好用也就只能一个ip猜想一次.这就从很大程度上下降了网站服务器的风险.apache
具体实施方法分为两个分支,第一个分支是linux服务器,第二个分支是windows服务器.windows
首先我来讲一下linux服务器的作法:相比windows服务器来讲,linux简单的多,由于linux的shell能够全面控制服务器这一点windows是没法比的.作法以下:安全
1.用nginx或apache重定向404错误到某个php文件(假如这个文件叫lock.php),当发生404错误时就会呼叫该php文件服务器
2.lock.php实现捕捉来访者的ip等资料,另外这个文件还要实现发送email功能,最重要的是这个文件要能够用来生成shell文件,并给与0700权限,让其能够被PHP执行网络
3.生成的shell既然能够被PHP执行,那么你想在这个shell里作啥都行了,你就随心所欲吧,你能够用它操做硬件防火墙封杀ip也能够用它操做linux自带的防火墙,这就看你的心情了.
Linux的作法就是这么简单,只有三步而已,那么接下来我说一下windows服务器的作法:
1.用nginx或apache重定向404错误到某个php文件(假如这个文件叫lock.php),当发生404错误时就会呼叫该php文件
2.lock.php实现捕捉来访者的ip等资料,另外这个文件还要实现发送email功能,最重要的是这个文件要能够用来生成bat文件,让其能够被PHP执行
3.bat文件的内容能够是用来操做硬件防火墙,若是你没有硬件防火墙的话你也能够用它来操做服务器上的ip安全策略达到实现封ip的目的(详情能够了解一下windows自带的netsh命令).
事实证实这两套作法效果都是很是好的,由于我有本身的服务器,最近经常被猜想,因此被逼出来了这样的作法,经过上述作法我发现效率很是高,从对方开始猜想到封锁完成的时间间隔不足1秒,若是您也有本身的服务器不妨尝试一下.
若是您对个人这篇文章有异议,欢迎您加个人群一块儿讨论,QQ群號:223494678