繁体   English   中英

Kubernetes Nginx入口控制器中的拒绝用户代理

[英]Deny User Agent in Kubernetes Nginx Ingress Controller

我受到使用User-Agent: Mozilla/5.0 Jorgee的漏洞探针的User-Agent: Mozilla/5.0 Jorgee ,我想删除/拒绝来自该用户代理的任何请求。

我一直在研究k8s示例,但似乎找不到解决方案。

有什么方法可以使用gcr.io/google_contianers/nginx-ingress-controller:0.8.3拒绝基于User-Agentgcr.io/google_contianers/nginx-ingress-controller:0.8.3

nginx go-template最好的看出来,这并不是他们的入口控制器的当前实现提供的。 我相信,在他们的思维模型中,希望以每Service方式进行这种抑制,因为在Ingress控制器中执行此操作可以很容易地将该规则应用于整个集群,从而为其他已发布的Service带来令人惊讶的结果秒。 我看了一下haproxy控制器的go-template ,那里似乎也是如此。

在这一点上,我认为您有两种选择:

  1. 使用自定义的nginx go-template文件 ,该文件可能不会很“糟糕”,但是在进行升级时,您需要格外小心,因为您的控制器将不再带有已知正确的nginx.tmpl
  2. 尝试使用更高级的haproxy入口控制器 ,该控制器可让您在Ingress资源中指定任意的haproxy代码段,这是到目前为止我所见过的最好的方法,对它们的backendRule数组取模似乎不是标准的

您可以至少在“正常” nginx控制器上向带有注释的Ingress添加自定义nginx配置片段,不确定是否也可以在GCE控制器上使用。 参见例如此处: https : //github.com/kubernetes/ingress/blob/master/examples/customization/configuration-snippets/nginx/ingress.yaml#L8

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM