如何限制 Nginx Ingress 上 X-Forwarded-For 标头的访问?

2024-04-05

我有一个 kubernetes 集群和 nginx 入口。请求从 cloudflare 发送到此入口。我可以通过 x-forwarded-for 标头限制对入口的访问吗?例如,我的 IP 是 1.1.1.1 ,cloudlare 2.2.2.2 。当我通过 cloudflare 发出请求时,cloudflare 将 x-forwarded-for 标头设置为: 1.1.1.1 。如果 x-forwarded-for 标头而不是 1.1.1.1,我想限制对我的入口的访问


我将此注释添加到 ingress,它现在正在工作!

nginx.ingress.kubernetes.io/server-snippet

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: services-ingress
  annotations:
    nginx.ingress.kubernetes.io/server-snippet: |
               if ($http_x_forwarded_for != "<my-ip-address>") {
               return 301 https://<redirect-address>;
                    }
spec:
  rules:
  - host: <my-host>
    http:
      paths:
      - path: /<my-path>
        backend:
          serviceName: <my-service>
          servicePort: 80 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何限制 Nginx Ingress 上 X-Forwarded-For 标头的访问? 的相关文章

随机推荐