TLS y certificados

La PKI que crea el primer nodo, TLS en el puerto de clientes y TLS mutuo entre nodos.

TeselaDB cifra todo el tráfico desde el primer arranque, con su propia implementación de TLS 1.3 y X.509.

La PKI del clúster

El primer nodo crea una autoridad de certificación (pki/ca.pem) y su certificado (pki/node.pem). Cada nodo que entra con un token recibe un certificado firmado por esa CA. Entre nodos solo se habla TLS 1.3 con certificado en los dos extremos: un nodo sin certificado de la CA no puede hablar con el clúster.

Puerto de clientes

El puerto de clientes exige TLS (--tlsMode requireTLS por defecto) y acepta TLS 1.2 y 1.3. Para usar tus propios certificados, por ejemplo los de tu CA corporativa, usa las opciones de MongoDB:

Shell
teseladb start --tlsCertificateKeyFile /etc/teseladb/server.pem --tlsCAFile /etc/teseladb/ca.pem

Con --tlsCAFile, el nodo pide certificado de cliente; --tlsAllowConnectionsWithoutCertificates deja entrar a los clientes sin él. --tlsCRLFile rechaza los certificados revocados.

Rotar certificados

Shell
teseladb admin cert rotate

o db.adminCommand({ rotateCertificates: 1 }) para volver a cargar los ficheros configurados. Ninguno de los dos reinicia el nodo.