I would like to enable mTLS between services in one K8S namespace. I wonder if I can do it without using service mesh? I considered cert-manager but all the examples I've seen involved Ingress resource which I do not need as my services are not exposed outside of the cluster.Thanks
mTLS between services in K8S
1k Views Asked by Revital Eres At
2
There are 2 best solutions below
0
orisho
On
You need something like SPIRE together with SPIRE integration operator. Together, they can create mTLS keys and certificates for use within a cluster, where the only configuration you need is pod annotations. The mTLS keypairs are provided as secrets, which you mount into your pods. SPIRE & the operator automatically handle keypair and CA rotation and update the Secrets accordingly.
Related Questions in KUBERNETES
- How to know a Pod's own IP address from inside a container in the Pod?
- Who will decide the "specified number of pods" for replication controller in kubernetes?
- Access other containers of a pod in Kubernetes
- Kubernetes cluster using Vagrant not working after restart
- kubectl not installed with gcloud SDK
- How do I access the Kubernetes api from within a pod container?
- Exposing several services with Vagrant and Kubernetes on my own server
- Does Kubernetes provision new VMs for pods on my cloud platform?
- Any suggestion for running Aerospike on Kubernetes on CoreOS on GCE?
- Kubernetes - kubectl exec bash - session drop and line width
- Google Container Engine (GKE): "Hello Wordpress" tutorial not working (ERR_CONNECTION_REFUSED)
- Kubernetes Pod Creation Speed
- How can i set max count of pods for replication-controller per node?
- Is there a way to tell kubernetes to update your containers?
- Postgres with Kubernetes and persistentDisk
Related Questions in CERT-MANAGER
- Cert Manager Challenge Pending Kubernetes
- Cert-Manager dns01 challenge order pending
- Istio Gateway Fail To Connect Via HTTPS
- Wildcard SaaS platform domains, over HTTPS, on Kubernetes
- Ingress and cert manager are not creating certificate
- cert-manager - Acme Http Solver Returns 404
- microk8s containerd - failed to reserve sandbox name
- How can I make Istio recognize k8s Ingress?
- Jetstack cert-manager hashicorp vault issuer certificate revocation
- Cert-manager in Kuberbetes: Client.Timeout exceeded while awaiting headers
- Certmanger with AWS PCA on other clouds
- cert-manager-webhook Certificate failed
- Problem installing Issuer (cert-manager) inside GKE cluster tls: failed to verify certificate: x509: certificate signed by unknown authority
- element.io installer failed, because of the cert manager. Any ideas?
- Cert-Manager Controlled Cert Resource
Related Questions in MTLS
- Why am I getting a "missing ) after argument list" when connecting to Heroku?
- mTLS using Azure Function HTTP Trigger?
- Why adding localhost to SAN list in considered not secured?
- When configuring mTLS between two spring boot applications, how should the configuration of the client go?
- Nginx m-TLS CN based validation in TCP stream configuration
- Is it right to add server certs and client certs with key to same keystore and provide it to the Java program using "javax.net.ssl.keyStore"
- AWS CDK Api Gateway MTLS ownershipVerificationCertificate for imported certificates on ACM
- mTLS with dapr not working in self-hosted with docker
- Refresh certificate in mTLS connection with OkHttp
- how to get mutual TLS authentication working in Postman for gRPC
- Cloudenity certificate bound access token request sample
- Kubernetes nginx-ingress verify-depth value doesn't match verified certs
- Which OCSP C API's to use for Certificate verification on OCSP Server
- kafka mTLS - verify error:num=18:self signed certificate
- Dapr Sentry for multiple sidecars
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Using Service Mesh like Istio or Linkerd for this is currently the only general solution for this.
It should be possible to do this using a library for you app as well, the library typically would need to support certificate management. Service Meshes typically use EnvoyProxy as a sidecar, it has implemented novel "control plane" APIs for management, called xDS protocols - this is something that your library typically would need to implement. In addition you need a control plane interface to manage services.
A drawback with doing this in a library is that it will be language-dependent. But the pro is that it will be better performant.
Google has recently taking this route with Traffic Director - proxyless service mesh