0

我正在将 Nginx 反向代理与 Kubernetes 服务一起使用。配置如下:

    events {
    }
    http {
          upstream my-service-3000 {
              server my-service:3000;
          }
        server {
              listen 443 ssl;
              server_name myserver.net;
              ssl_certificate     /key.pem;
              ssl_certificate_key /key.pem;
              location / {
                    allow myIP;
                    deny all;
                    proxy_pass http://my-service-3000;
              }
        }
        server {
              ...
        }
    }

它工作正常(进行反向代理、终止 ssl、更改端口、查找 Kubernetes 服务),直到我尝试仅将我的 IP 列入白名单。当我尝试通过 https 访问服务时 - 我从 Nginx 得到 403。我试图移动允许/拒绝命令,但它没有帮助。有什么建议可能是问题所在?
我自己也支持代理 - 所以我正在使用我的外部组织 IP。

4

1 回答 1

0

白名单应该在http指令下,而不是在location指令下。

http {
      allow MyIp;
      deny all;
      upstream my-service-3000 {
          server my-service:3000;
     }
     server {
          listen 443 ssl;
          server_name myserver.net;
          ssl_certificate     /key.pem;
          ssl_certificate_key /key.pem;
          location / {
                proxy_pass http://my-service-3000;
          }
     }
     server {
          ...
     }
}
于 2018-09-29T06:07:25.047 回答