400 Bad Request The plain HTTP request was sent to HTTPS port

Installing passbolt Helm chart in a kubernetes cluster with ingress enabled throwing: “The plain HTTP request was sent to HTTPS port” when trying to access passbolt URL.

This issue is due to NGINX trying to reach backend passbolt service in HTTP instead of HTTPS which passbolt don’t like.

Adding "nginx.ingress.kubernetes.io/backend-protocol: “HTTPS” to passbolt ingress annotations resolved the issue.

1 Like

Hello, can you send some snippet? It hasn’t worked for me… This is my extra-values.yaml

ingress:
  enabled: true
  className: nginx
  annotations:
    cert-manager.io/cluster-issuer: letsencrypt-prod
    nginx.ingress.kubernetes.io/backend-protocol: "HTTPS"
  hosts:
    - host: passbolt.my.custom.domain   
      paths:
        - path: /
          pathType: ImplementationSpecific   
  tls:
    - secretName: passbolt-tls
      hosts:
        - passbolt.my.custom.domain

passboltEnv:
  plain:
    APP_FULL_BASE_URL: https://passbolt.my.custom.domain

Thanks in advance