By default, Skupper manages its own certificate lifecycle by generating an internal CA named skupper-site-ca.
Internal Directory Structure
Generated certificates are stored in the runtime/ directory under the namespace home:
runtime/issuers/skupper-site-ca/: Contains the internal CA (tls.key, tls.crt, ca.crt).runtime/certs/: Contains server certificates (named after the RouterAccess or spec.tlsCredentials) and client certificates (prefixed with client-).
Certificate Generation Logic
- CA: Skupper generates
skupper-site-ca to sign other certificates. - Server Certificates: If
RouterAccess is defined, Skupper generates a certificate valid for RouterAccess.spec.bindHost and all RouterAccess.spec.subjectAlternativeName entries. - Client Certificates: Skupper generates client certificates signed by
skupper-site-ca to be used by other sites for establishing links. These are stored in runtime/certs/ with a client- prefix.
shell
runtime/
├── certs
│ ├── my-router-access
│ │ ├── ca.crt
│ │ ├── tls.crt
│ │ └── tls.key
│ └── client-my-router-access
│ ├── ca.crt
│ ├── tls.crt
│ └── tls.key
└── issuers
└── skupper-site-ca
├── ca.crt
├── tls.crt
└── tls.key