Apache 反向代理不断要求提供基本身份验证凭据

Apache 反向代理不断要求提供基本身份验证凭据

我在前面配置Apache霍蒂奥- Karaf 托管的 JVM 管理控制台。尽管 Hawtio 由 Jetty 提供服务并受 Karaf 的 JAAS 实现保护,但我们希望 Apache 添加 Basic Auth,以便我们能够进一步保护它 - 例如使用 Fail2Ban 防止暴力攻击。

然而,尽管遵循了以下建议,,Apache 的基本身份验证不断弹出,而不是只要求输入一次凭据。Hawtio 的登录页面在两次请求凭据后加载,但是,一旦您输入了 Hawtio 登录详细信息,Apache 就会不断弹出其登录页面。我甚至输入了 20 次凭据,但它仍然要求更多!

我是否遗漏了一些显而易见的东西?

这是我的配置:-

<VirtualHost *:80>
  ServerAdmin admin@localhost
  ServerName hawtio.mydomain.com

  ErrorLog ${APACHE_LOG_DIR}/error.log
  LogLevel warn

  CustomLog ${APACHE_LOG_DIR}/access.log combined

  # suppress rule checking for Hawtio stuff
  SecRuleRemoveById 950901 960010 970003 970014 981257 981318 981407 981205 981222 981240 981220

  <Location />
    ProxyPass http://application-server:8765/
    ProxyPassReverse http://application-server:8765

    AuthUserFile /etc/users
    AuthName "Restricted area"
    AuthGroupFile /dev/null 
    AuthType Basic
    Require valid-user

    RequestHeader unset Authorization
  </Location>

</VirtualHost> 

我尝试过多种变化,包括与<Proxy>小组合作,但<Location />都无济于事。根据这个帖子,我补充说,RequestHeader unset Authorization 看看是否是 Jetty 在抱怨,但无论该指令是否存在都没有任何区别。

如果我删除基本身份验证指令,该网站就可以完美运行。

谢谢您的指点。

答案1

您需要设置 cookie 或以某种方式缓存凭据。我在使用一次性密码配置 Apache 时见过这种情况。mod_auth_radius 支持 AuthRadiusCookieValid。不确定您会在这里使用什么。

相关内容