-
Notifications
You must be signed in to change notification settings - Fork 8.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enabling ModSecurity CRS and dynamic configuration prevents pod from starting #3129
Comments
@juhtie01 can you provide the generated Nginx configuration as well? |
@ElvinEfendi Here it is: |
@juhtie01 please also provide a minimal configuration I can not reproduce this. I tried
in the configmap and
in the args, it worked without any issue. |
Here is a minimal
We have altogether 10 Ingresses, one of which has ModSecurity SecRuleEnging turned on with annotations:
The rest either have no related annotations (ModSecurity is in detection mode), or the SecRuleEngine has been turned off. |
I tried to reduce the size of our configuration, and after deleting three ingresses (and being left with 7) the nginx-ingress pods work again. So this seems to be somehow related to the size of the dynamic configuration. |
I had this issue as well. Disabling mod security made it work. Funny thing is the issue started some time after enabling mod security, so it could be due to sometimes not being able to reload the configuration dynamically. Maybe some memory issue? |
Same issue here, when ModSecurity ist enabled in the ConfigMap, the Pods will crash loop. It doesn't matter if there are any Ingresses with ModSecurity rules specified, simply enabling it leads to this behavior. Also using 0.20.0 |
I'm still having this issue. I'm running nginx-ingress 0.22.0 Node version 1.11.5-gke.5. I have 16 ingresses all with
Bricks the entire cluster. Pods and nginx-ingress-controller are unable to start with the same logs from the original post |
Same here. It works for me with |
Same here, but cannot find the reason because the logs just print that the diff cannot be applied and if restarting:
|
also running into the above:
configmap:
|
Is this a request for help?: No
What keywords did you search in NGINX Ingress controller issues before filing this one?: is-dynamic-lb-initialized
Is this a BUG REPORT or FEATURE REQUEST?
BUG REPORT
NGINX Ingress controller version: 0.19.0
Kubernetes version (use
kubectl version
): 1.10.7Environment:
Container Linux by CoreOS stable (1800.7.0)
uname -a
):Linux ip-10-10-8-21.eu-west-2.compute.internal 4.14.63-coreos #1 SMP Wed Aug 15 22:26:16 UTC 2018 x86_64 Intel(R) Xeon(R) CPU E5-2686 v4 @ 2.30GHz GenuineIntel GNU/Linux
What happened:
I'm trying to enable ModSecurity with OWASP ModSecurity CRS and a custom ruleset. The custom ruleset works when the file containing the rules is included in an Ingress annotation. But when CRS is enabled globally with
enable-owasp-modsecurity-crs: "true"
, Nginx Ingress Controller won't start. The logs show the following output:We are running the controller with dynamic configuration enabled:
If I either disable the CRS or disable dynamic configuration (and dynamic certificates on the same go), the pod starts up correctly.
What you expected to happen:
The pods can start up correctly when both CRS and dynamic configuration are enabled.
How to reproduce it (as minimally and precisely as possible):
(Sorry, I will have to get back to you on the minimal example tomorrow.)
Anything else we need to know:
The text was updated successfully, but these errors were encountered: