今天亮教授微信里告诉我,“你的网站挂了”。
我浏览器里测试了一下果然挂掉了。
赶紧登陆了阿里云管理后台,看了一下,CPU 100%,磁盘 IO 暴增,果断重启。
重启之后,看了一下 Nginx 的请求日志:
里面无数的 POST /xmlrpc.php 请求,很快我的服务器就挂了
160.153.153.30 - - [28/Oct/2019:12:46:17 +0800] "POST /xmlrpc.php HTTP/1.1" 200 415
202.144.133.140 - - [28/Oct/2019:12:57:52 +0800] "POST /xmlrpc.php HTTP/1.1" 499 0
23.91.70.84 - - [28/Oct/2019:12:57:52 +0800] "POST /xmlrpc.php HTTP/1.1" 499 0
访问了一下这个 Wordpress 站点的 xmlrpc.php,确实有返回:
http://www.xxx.com/xmlrpc.php
XML-RPC server accepts POST requests only.
解决方法
参考 digital ocean 上的一个文档,把 Wordpress 站点的 xmlrpc.php 在 Nginx 里禁用了。
location = /xmlrpc.php { deny all; }
reload 了 Nginx,测试了一下,确实不能访问了。
xmlrpc.php 是做什么的
查了一下,xmlrpc.php 是 Wordpress 为手机等客户端提供接口的一个文件。
参考
- https://www.hostinger.com/tutorials/xmlrpc-wordpress
- https://www.digitalocean.com/community/questions/how-do-i-stop-brute-force-attacks-against-xmlrpc-php-from-crashing-my-wordpress-server
微信关注我哦 👍
我是来自山东烟台的一名开发者,有感兴趣的话题,或者软件开发需求,欢迎加微信 zhongwei 聊聊, 查看更多联系方式