首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未检测到Varnish缓存和暴力破解失败的登录

未检测到Varnish缓存和暴力破解失败的登录
EN

Stack Overflow用户
提问于 2020-07-09 00:36:59
回答 1查看 82关注 0票数 1

因为我安装并设置了varnish缓存,所以失败的登录将使用缓存的IP (127.0.0.1)而不是攻击者记录到auth.log。例如:

Jul 8 14:48:06 host wordpress(hostname.com)[7285]: Authentication failure for admin from 127.0.0.1

在我的配置中,Varnish提供超文本传输协议,apache2提供超文本传输协议作为反向代理和后端the服务器。内部和外部web请求分别记录。看起来一切正常,除了暴力破解登录现在不会被fail2ban拾取,因为它们似乎都来自服务器。

子vcl_recv被设置为“通过”登录页面;

代码语言:javascript
复制
if (req.url ~ "/wp-(login|admin)") {
return (pass);
        }

如何将请求IP记录到auth.log而不是127.0.0.1?

EN

回答 1

Stack Overflow用户

发布于 2020-07-13 15:17:29

Varnish会跟踪客户端IP,并将其存储在X-Forwarded-For头中,然后转发到您的后端。

只需将标头添加到LogFormat中以包含X-Forwarded-For即可。

下面是Apache配置文件中的combinedcommon日志格式:

代码语言:javascript
复制
LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %O" common

您必须按如下方式更改它:

代码语言:javascript
复制
LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" %>s %O" common

X-Forwared-For标头的值将存储在您的日志中,而不是客户端IP地址。

更新

事实证明,有问题的日志项与Apache无关。修改LogFormat的建议无关紧要。

这可能与使用wp-fail2ban有关,这是一个在系统的auth.log文件中记录失败登录尝试的WordPress模块。

因为wp-fail2ban不知道Varnish,所以它记录的IP地址始终是127.0.0.1。但是,WP_FAIL2BAN_PROXIES配置参数可以让这个模块知道代理。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62799461

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档