整个网站(反向代理)的 Nginx basic_auth,除了“隐藏”URL 之外,该 URL 无需 basic_auth 即可访问所有内容

整个网站(反向代理)的 Nginx basic_auth,除了“隐藏”URL 之外,该 URL 无需 basic_auth 即可访问所有内容

总结

在 nginx 站点定义中设置一个乱码 URL,以绕过基本身份验证进行反向代理

更多细节

我有一个在 VPS 上运行 Grafana 的设置,以及一个在基本身份验证后指向它的 nginx 反向代理。该设置运行良好,但从移动设备访问它很麻烦,必须一直输入用户名和密码。

我正在考虑保留现有设置以进行常规访问,同时创建一个不容易猜到的 URL,以便直接访问 Grafana,这样我就能够在手机上为未受保护的 URL 添加书签并无需用户/密码即可访问它。

我阅读了有关此事的所有问题,但我仍然需要输入用户/密码,所以我可能做错了什么。

阅读完所有相关问题后,我当前的设置如下所示:

  server {
      listen 80;
 
      server_name grafana.some.tld;
      auth_basic_user_file /etc/nginx/htpasswd.users;
      
        location  /q874gg#11CM2j/ {
          auth_basic "off";
          allow all;
          proxy_redirect off;
          proxy_pass http://127.0.0.1:3000;
          proxy_http_version 1.1;
          proxy_set_header Upgrade $http_upgrade;
          proxy_set_header Connection 'upgrade';
          proxy_set_header Host $host;
          proxy_cache_bypass $http_upgrade;
      }
 
      location / {
          auth_basic "Restricted Access";
          proxy_pass http://127.0.0.1:3000;
          proxy_http_version 1.1;
          proxy_set_header Upgrade $http_upgrade;
          proxy_set_header Connection 'upgrade';
          proxy_set_header Host $host;
          proxy_cache_bypass $http_upgrade;
      }
 
}

基本上是 2地点s 应该相同,除了auth_basic指令。我上面介绍的是我迄今为止所读内容的综合结果。

可能有一些重定向超出了我的“隐藏”位置并到达了受保护的位置?

附加问题:这是通过手机实现不受保护的访问的好方法吗?我无法使用 IP 过滤,因为它是动态的,而且 VPN 对于快速查看我的仪表板来说很麻烦。

非常感谢您的帮助!

相关内容