起因:

今天忽然打开个人blog,就发现打开很慢,然后出现了下图的反馈:服务器服务不可用!waht?刷新了几次都不行,赶紧登陆服务器后台查看情况。

wKiom1hT-RmyHsNlAAAQ1c-RRtg154.png-wh_50

确认***:

登陆后台后通过netstat发现连接数极多,相对于平时来说多了好几倍吧,赶紧通过日志load出疯狂访问的ip

# cat 2016-12-16-access_log | awk '{print $1}' | sort | uniq -c | sort -rn | head -n 10

  30305 191.96.249.53

  29016 191.96.249.54

   4275 127.0.0.1

    461 139.199.66.174

     14 123.126.113.79

......

接着查看这两个ip对我网站做了什么

wKioL1hT-tvQOoyYAAHm9kVB0qw286.png-wh_50

发现其不断post数据到xmlrpc.php,百度了一下xmlrpc.php发现是暴力破解***。

此***具体解析如下链接:

http://www.freebuf.com/articles/web/38861.html


网站瘫痪原因:

通过iostat,vmstat查看了一下,服务器的cpu,内存等资源并没有异常,那么我的网站怎么崩了。我的理解是:1.我的云服务器带宽不高才1M,这样的***把我的带宽给打满了。2.***请求把apache的服务进程全占了。

PS:这是我自己的理解,如果有更好的解释,欢迎大家留言。


解决方案:

  1. 通过iptable或云服务器的安全组设置,把对应ip给封堵了。

  2. 通过.htaccess屏蔽xmlrpc.php文件的访问。

# protect xmlrpc


<Files xmlrpc.php>


Order Deny,Allow


Deny from all


</Files>