-
Hi, I'm getting the following error when running a signed image built from the connaisseur/setup/Dockerfile (verified by "docker trust inspect"): Is the controller trying to make an HTTPS call to the service via the Internet? Because my Kubernetes machines are proxied by a very restrictive corporate proxy, that does not allow arbitrary connections to the Internet. |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 23 replies
-
Hi @apopaa, Connaisseur will in general connect via HTTPS. It is hard to judge without knowing the details of your infrastructure, but I might give you a few hints: Let me know if that helps 🙏 |
Beta Was this translation helpful? Give feedback.
-
OK, so I've made some progress in that, as I had suspected, the "x509: certificate signed by unknown authority" error was related to my proxy, which is configured to inspect content and so decrypts any TLS traffic and then re-encrypts it with its own certificate, which of course is then seen as "unknown" by the connaisseur webhook. The solution was pretty simple: add ".svc" to the no_proxy environment variable in /etc/kubernetes/manifests/kube-apiserver.yaml, to make kube-apiserver bypass the proxy. Now, in doing that, I think I uncovered a bug in the handling of the policy configuration from values.yml: because I changed the manifest of kube-apiserver, the kubelet attempted to reload it, but failed with the following error in systemd logs (journalctl): Jul 22 16:17:56 masternode kubelet[38796]: E0722 16:17:56.313082 38796 kubelet.go:1664] Failed creating a mirror pod for "kube-apiserver-masternode_kube-system(6da95f69ab0a006e91f81c7c5d98f14f)": admission webhook "connaisseur-svc.connaisseur.svc" denied the request: "masternode:5000/k8s.gcr.io/kube-apiserver:v1.18.6" is not a valid image format. That's because my K8s is set up to load system pods from a local repo installed on masternode machine, and no pattern in the policy in values.yml was matching "masternode:5000/k8s.gcr.io/kube-apiserver:v1.18.6", and so connaisseur rejected loading the image. I had expected it to accept any image it cannot match, by default; turns out it is rejects any image it cannot match, by default. Is this a bug, or a feature? pattern: "myregistry.azurecr.io/apopa/:" |
Beta Was this translation helpful? Give feedback.
OK, so I've made some progress in that, as I had suspected, the "x509: certificate signed by unknown authority" error was related to my proxy, which is configured to inspect content and so decrypts any TLS traffic and then re-encrypts it with its own certificate, which of course is then seen as "unknown" by the connaisseur webhook. The solution was pretty simple: add ".svc" to the no_proxy environment variable in /etc/kubernetes/manifests/kube-apiserver.yaml, to make kube-apiserver bypass the proxy.
Now, in doing that, I think I uncovered a bug in the handling of the policy configuration from values.yml: because I changed the manifest of kube-apiserver, the kubelet attempted to reload it,…