Hello, I’ve been stuck with a TLS Client cert issues for a while…I deployed using Helm… I created the certs with the built-in CA described here: https://learn.hashicorp.com/tutorials/consul/tls-encryption-secure
These are the errors from the server logs:
[ERROR] agent.server.rpc: TLS handshake failed: conn=from=13.xx.xx.xxx:38462 error=“tls: client didn’t provide a certificate”
These are from the clients:
[ERROR] agent.client.memberlist.lan: memberlist: Received invalid msgType (22) from=13.xx.xx.xxx:59562
[WARN] agent: grpc: Server.Serve failed to create ServerTransport: connection error: desc = “transport: http2Server.HandleStreams received bogus greeting from client: “GET /metrics HTTP/1.1\r\nH””
On the clients the tls.crt file does exist at: /consul/tls/ca
I’ve tried several configurations and so far the errors persist. This is my current config file that I use with helm:
global:
enabled: true
name: consul
datacenter: dc1
image: ‘consul:1.8.4’
imageEnvoy: envoyproxy/envoy-alpine:v1.14.2
serverAdditionalDNSSANs: ["‘consul.service.consul’"]
tls:
enabled: true
enableAutoEncrypt: true
httpsOnly: true
verify: false
caCert:
secretName: consul-ca-cert
secretKey: tls.crt
caKey:
secretName: consul-ca-key
secretKey: tls.key
lifecycleSidecarContainer:
resources:
requests:
memory: ‘20Mi’
cpu: ‘20m’
limits:
memory: ‘50Mi’
cpu: ‘20m’
dns:
enabled: true
server:
enabled: true
replicas: 3
bootstrapExpect: 3
storage: 10Gi
connect: true
server.extraConfig: |
{
“allow_tls”: {
“enabled”: true
“enable_agent_tls_for_checks”: true
}
}
sidecarProxy:
resources:
requests:
memory: 100Mi
cpu: 100m
limits:
memory: 100mi
cpu: 100m
connectInject:
enabled: true
default: false
services:
backend: backend.service.consul
ui:
enabled: true
service:
type: ‘LoadBalancer’
client:
enabled: true
grpc: true
exposeGossipPorts: true
extraConfig: |
{
“auto_encrypt”: {
“tls”: true
}
}
syncCatalog:
enabled: true
default: true
toConsul: true
toK8s: true
affinity: null
resources:
requests:
memory: ‘25Mi’
cpu: ‘20m’
limits:
memory: ‘50Mi’
cpu: ‘20m’
thank you…