Hi,
We are using Traefik K8s Ingress and have following setup details.
NAME READY STATUS RESTARTS AGE
pod/httpbin-644f898c86-xxxx 2/2 Running 0 2d16h
pod/httpbin-644f898c86-xxxx 2/2 Running 0 2d16h
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/httpbin ClusterIP 10.97.149.232 <none> 8080/TCP 61d
service/httpbin-ssl ClusterIP 10.99.20.8 <none> 8081/TCP 61d
NAME TYPE DATA AGE
secret/httpbin-ssl kubernetes.io/tls 2 45h
NAME CLASS HOSTS ADDRESS PORTS AGE
ingress.networking.k8s.io/httpbin-ingress <none> httpbin.k8s.mycorp.org 80 61d
ingress.networking.k8s.io/httpbin-ingress-tls <none> httpbin.k8s.mycorp.org 80, 443 47h
Issue is with httpbin-ingress-tls. This Ingress uses secret "httpbin-ssl" to support tls requests. The httpbin-ssl secret holds the entire cert chain (wild card server cert, intermediate certs and RootCert) and keys. Can verify this with secret from kubectl get command.
While the configuration works and From browser it is fine, using openssl/curl/wget TLS calls to httpbin.k8s.mycorp.org
is failing with ERROR : Verification error: unable to verify the first certificate
.
But if i pass same certificate chain these tools it works. e.g.: openssl s_client -showcerts -connect httpbin.k8s.mycorp.org:443 -CAfile cert_chain.pem
Not sure why Traefik is unable to send the Intermediate certs. It is self-signed cert by the way.