碎碎谈 · 10月30日 00:26
#运维 #吐槽 我又双叒叕被自己的安全配置拦到服务器外边了😂
这次是自己的锅,最近扫描器泛滥,每天光试图访问/.user.ini的IP就有1000+个,于是呢,我就大手一挥,在前端机的Nginx加了4行配置
location = /.user.ini {
access_log /var/log/nginx/blocked.log combined;
return 444;
} (实际location 是写了一个很复杂的正则表达式啦,写成上边这样是方便大家理解)
fail2ban会盯着这个blocked.log文件,把里面444的IP都给封掉(DROP),结果啊结果,我居然忘了把后端机的IP放到fail2ban的白名单里了。😂
于是后端机的IP就被前端机的fail2ban给封掉了,偏偏WordPres和里面的插件一些请求涉及自己请求自己时,用的是域名而不是本地回环请求,于是,很多请求就只能等网络20秒超时了。
这也是最近大家发现在博客里发评论后,需要等好久评论才能成功发出去的根本原因。
表层原因原因是缓存管理插件在出现新评论后需要刷新页面缓存,升级到最新的PHP版本后,他代码逻辑出了点问题,导致报错,偏偏他这里报错的逻辑里是请求的主站域名路径,而不是本地路径,还重试了1次(正好DROP是10+10秒超时)所以导致评论最少也需要20多秒才能显示出来。
总而言之:是我自己犯傻了
参与讨论