2017-09-12 1 views
0

Ich bin mit einem Schwachstellen-Probe, die User-Agent: Mozilla/5.0 Jorgee verwendet, und ich möchte alle Anfragen von diesem Benutzer-Agent ablehnen/ablehnen.Verweigern User Agent in Kubernetes Nginx Ingress Controller

Ich habe die Beispiele der K8s gegraben, aber ich kann keine Lösung finden.

Gibt es eine Möglichkeit, dass ich Anfragen basierend auf User-Agent mit gcr.io/google_contianers/nginx-ingress-controller:0.8.3 ablehnen kann?

+0

Warum sind Ihre Kubernetes der Außenwelt ausgesetzt? –

+0

Huh? Es handelt sich um einen Dienst, der über einen AWS LoadBalancer ausgeführt wird. –

+0

Oh ok. Bitte schauen Sie sich diesen Artikel an https://www.cyberciti.biz/tips/linux-unix-bsd-nginx-webserver-security.html und Punkt # 12 –

Antwort

1

So gut kann ich von the nginx go-template sagen, das ist nicht etwas, das die aktuelle Implementierung ihrer Ingress-Controller bietet. Ich glaube, dass man in seinem mentalen Modell diese Art der Unterdrückung in einer Art und Weise durchführen möchte, da es im Ingress Controller sehr leicht möglich wäre, diese Regel auf den gesamten Cluster anzuwenden, was zu überraschenden Ergebnissen für andere veröffentlichte Service führt s. Ich habe mir the haproxy controller's go-template angesehen und es scheint auch dort zu sein.

An diesem Punkt, ich glaube, Sie haben zwei Möglichkeiten:

  1. Use a custom nginx go-template file, die möglicherweise nicht „schlecht“ sein, aber man muss Vorsicht walten zu lassen, wenn Upgrades zu tun, da der Controller wird nicht mit einem kommen mehr bekannt zu korrigieren nginx.tmpl
  2. a more advanced haproxy ingress controller Versuchen Sie, mit dem Sie beliebigen haproxy Schnipsel direkt in Ihrer Ingress Ressource angeben kann, was der beste Ansatz ist die ich bisher gesehen habe, modulo ihre backendRule Array not to be standard
scheinen 210
Verwandte Themen