Jueves, 16 de enero de 2020
Siguiendo con informes de situación en este caso toca un texto más breve explicando los porqués de los fallos ocasionales en la renovación de los certificados digitales.
Transcribo el correo según lo envié.
Los certificados digitales son un requerimiento de seguridad para
que las conexiones de datos entre programas sean fiables.
Aunque parece que son los navegadores web los que más los utilizan el resto de los servicios del sistema los emplean también de una forma similar (correo electrónico, mensajería, administración de sistemas, copias de seguridad, …).
Así que la siguiente relación cuenta cómo obtenemos los
certificados y el problema que aparece regularmente si algo falla:
- Los certificados digitales se generan gratuitamente en los servidores de Let’s Encrypt (un proyecto comunitario) y tienen una vigencia de tres meses como contraposición de los de pago, que suelen durar unos dos años.
- Los servidores aislados (como catalogo.venexma.es) renuevan
los certificados automáticamente cada dos o tres meses y ni nos
enteramos de una caída de servicio. El proceso también puede
fallar por lo que describo más abajo.
- Los servidores internos están más relacionados y he repartido
los roles porque unos tienen servicios abiertos al exterior
(erp.venexma.net), otros sólo al interior (beta.venexma.net) y
otros una mezcla (venexma.net). De esta forma el proceso a
seguir es el siguiente:
- Una máquina concreta, la que da acceso a la red y nos protege de intrusiones, renueva los certificados para todas las demás.
- Una vez obtenidos los certificados los copia al disco de las otras máquinas y reinicia los programas que los utilizan.
- Anota el proceso y queda vigilante hasta que la fecha de
caducidad está próxima.
- El proceso anterior tiene como punto débil que cualquier fallo
en la copia de los certificados o en el reinicio de los
programas (odoo por ejemplo necesita que arranquen tres en orden
concreto) deja el sistema en un estado desconocido. Puede que
funcione, puede que no o puede que lo haga con los certificados
caducados y pase lo que vemos que pasa.
- A la posible pregunta de por qué no lo he arreglado aún tengo
que responder que porque es un proceso delicado para probar y
que lo hago cada tres meses. Si funciona bien lo dejo en la cola
de cosas pendientes, si no, como pasa a menudo, arreglo el
problema y anoto los fallos para la siguiente vez. Pero pasa al
final de la cola de asuntos pendientes.
Si te preguntas el por qué de obtener los certificados de un proyecto como Let’s Encrypt es porque nació como una forma de conseguir que toda la web estuviese cifrada y lo apoyan la mayor parte de las empresas tecnológicas (Google incluida). Es una fundación que vive de patrocinios y en pocos años se ha hecho vital para que la web sea más segura pero que tiene reglas estrictas de funcionamiento. La renovación cada tres meses es una de ellas.
Hay una solución mucho más práctica para el problema: actualizar el software que renueva los certificados y aplicar un método diferente de distribución de los mismos; la fundación publica el software cada poco tiempo y estamos un poco más desactualizados de lo que debiéramos. Tengo el asunto estudiado, casi completas las modificaciones, pero no está implementado ni probado.