Distribuyendo certificados digitales …

… entre máquinas de la red interna. Sigo dándole vueltas.

Las primeras pruebas de creación de certificados y renovación han sido satisfactorias. Los scripts funcionan y lo único que me preocupa y me tiene parado es cómo distribuirlos de forma segura. Vale, es una red interna y no es tan difícil realizar transferencias de archivos entre máquinas; instalarlas con los permisos adecuados ya es otra cosa un poco más dudosa. El problema es que no siempre van a estar dentro de una red. Es muy posible que alguna termine fuera de la empresa en breve y en ese caso, y sin recurrir a montar redes privadas, es mejor planteármelo con más claridad.

Por ahora he visto lo siguiente:

  • No es necesario que en las máquinas secundarias (aquellas que sólo emplean los certificados) éstos estén en la misma localización que en la máquina que los renueva. En ésta existen el condicionante del programa cliente que espera encontrarlos en un sitio concreto pero en las secundarias no es así.
  • En demasiados casos me he encontrado con que es necesario realizar tareas adicionales tras renovar certificados. Reiniciar servidores es muy sencillo, efectuar copias secundarias no tanto. En cualquier caso no basta con transferrir los archivos y se hace necesario ejecutar programas con privilegios muy altos.

Uno de mis famosos esquemas para aclararme:

Para el caso de la transferencia el programa scp va sobrado. El problema es cómo instalarlos correctamente una vez que han sido transferidos. La cuenta que recibe dichos archivos es osr (operador de sistema remoto) y como tal es capaz de ejecutar tareas administrativas.

Así que voy a crear un programa específico al que llamaré receive-new-certs y que haga lo siguiente:

  1. Mover los nuevos archivos al directorio de explotación: /etc/ssl/letsencrypt.
  2. Alterar la propiedad (root) y los permisos adecuados (0440).
  3. Reiniciar servicios (porque ya que estamos para qué perder más tiempo).

Voy a probar a ver si puede ser algo tan sencillo o no. Y es que tocar archivos que se están empleando en vivo lo mismo me descubre nuevas sensaciones administrativas.

Ah, y de paso le cambio el nombre al otro programa. De sync-letsencrypt a send-new-certs. Mola.