-
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
The auth-tls-match-cn shouldn't enable for http #9250
Comments
@wxyh: This issue is currently awaiting triage. If Ingress contributors determines this is a relevant issue, they will accept it by applying the The Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
/remove-kind bug Lets wait for other comments, but |
We stumbled upon a possible issue using the combination of auth-tls-match-cn and automated certificate renewal with the certificate issuer. The acme challenge has no chance of getting successfully answered and will remain pending indefinitely. Afaik the certificate issuer sends a request like this: In this special case TLS is not implied. Is there any known workaround we are missing? |
@schandbert check my comment here => #8582 (comment) .. maybe that could help |
@sherifkayad Excellent, works very well, thx. Hopefully the |
What happened:
If add "nginx.ingress.kubernetes.io/auth-tls-match-cn" annotation, it will add config like this
if ( $ssl_client_s_dn !~ {{ $server.CertificateAuth.MatchCN }} ) { return 403 "client certificate unauthorized";}
This works for both http and https requests, all http requests will failed.
What you expected to happen:
Nginx don't verify client cert for http requests. All http requests also shouldn't check client cert matchCN .
NGINX Ingress controller version (exec into the pod and run nginx-ingress-controller --version.):
Release: 1.2.1
Kubernetes version (use
kubectl version
):1.23.12
Environment:
Cloud provider or hardware configuration:
OS (e.g. from /etc/os-release):
Kernel (e.g.
uname -a
):Install tools:
Please mention how/where was the cluster created like kubeadm/kops/minikube/kind etc.
Basic cluster related info:
kubectl version
kubectl get nodes -o wide
How was the ingress-nginx-controller installed:
helm ls -A | grep -i ingress
helm -n <ingresscontrollernamepspace> get values <helmreleasename>
Current State of the controller:
kubectl describe ingressclasses
kubectl -n <ingresscontrollernamespace> get all -A -o wide
kubectl -n <ingresscontrollernamespace> describe po <ingresscontrollerpodname>
kubectl -n <ingresscontrollernamespace> describe svc <ingresscontrollerservicename>
Current state of ingress object, if applicable:
kubectl -n <appnnamespace> get all,ing -o wide
kubectl -n <appnamespace> describe ing <ingressname>
Others:
kubectl describe ...
of any custom configmap(s) created and in useHow to reproduce this issue:
Anything else we need to know:
The text was updated successfully, but these errors were encountered: