Client certificates
Configure MinIO Sidekick to authenticate to backend servers using client certificates and to verify backend server certificates.
Client certificate authentication
Provide client certificate and key files to authenticate load balancer connections to backends:
sidekick --client-cert /path/to/public.crt --client-key /path/to/private.key \
  --health-path=/ready \
  https://backend1:8000 https://backend2:8000
Sidekick presents the client certificate when establishing connections to backend servers. Backends configured for mutual TLS verify the client certificate before accepting connections.
Server certificate verification
By default, Sidekick verifies backend server certificates against the system certificate authority bundle.
Provide a custom CA certificate using --cacert:
sidekick --cacert /path/to/ca.pem \
  --health-path=/ready \
  https://backend1:8000 https://backend2:8000
Sidekick trusts certificates signed by the specified CA when connecting to backends. This allows verification of certificates signed by internal or private certificate authorities.
Disable verification
Disable certificate verification for development or testing using --insecure:
sidekick --insecure \
  --health-path=/ready \
  https://backend1:8000 https://backend2:8000
Combined configuration
Use both server-side TLS termination and client authentication simultaneously:
sidekick --cert /path/to/server-public.crt --key /path/to/server-private.key \
  --client-cert /path/to/client-public.crt --client-key /path/to/client-private.key \
  --cacert /path/to/ca.pem \
  --health-path=/ready \
  https://backend1:8000 https://backend2:8000
This configuration enables TLS on both client-facing and backend-facing connections with mutual authentication.