-
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
SSL endpoints with nginx.ingress.kubernetes.io/auth-tls-secret must not serve anything over http #2010
Comments
@farcaller have you tried setting |
@Preskton that annotation only works in the GCE Ingress controller |
@farcaller if you don't want traffic in port 80 you need to filter the traffic in your firewall or not expose port 80 in the deployment. |
@aledbf how is that solving an issue? I want nginx ingress to serve 3xx redirects at all times, and not just ignore a "auth-tls-secret" annotation if it's incorrect. My point is that the failure more is too permissive. |
If there is an issue with the SSL certificate you should see get a 403 error |
Exactly! And the point of my bug report is that instead I got a 200 and
could see the backend data otherwise supposedly protected by a client cert.
|
@farcaller please test |
Is this a request for help? (If yes, you should use our troubleshooting guide and community support channels, see https://kubernetes.io/docs/tasks/debug-application-cluster/troubleshooting/.): no
What keywords did you search in NGINX Ingress controller issues before filing this one? (If you have found any duplicates, you should instead reply there.): auth-tls-secret
Is this a BUG REPORT or FEATURE REQUEST? (choose one): BUG REPORT
NGINX Ingress controller version:
0.10.2
Kubernetes version (use
kubectl version
):Environment:
What happened:
Given an ingress with the following annotations:
I tried to access the website via http as soon as ingress controller recognised the new object, before kube-lego delivered a secret with the tls certificate. I got the proper proxied response from my backend with the auth completely circumvented in that window of no cert.
What you expected to happen:
to see either 3xx redirect on http to https (even though https backend isn't not functional) or 403 (because the ingress requires tls auth).
How to reproduce it (as minimally and precisely as possible):
Use the noted annotations in the ingress with no tls secret available.
Anything else we need to know:
The text was updated successfully, but these errors were encountered: