¿Cómo resolver el problema del huevo o la gallina con los certificados TLS del cliente en un host físico?

¿Cómo resolver el problema del huevo o la gallina con los certificados TLS del cliente en un host físico?

No entiendo como solucionar el problema del huevo o la gallina al automatizar la instalación de los servidores.

Tengo una serie de servidores que se pueden reconstruir mediante PXE. Cuando se reconstruye una máquina, carga todas las configuraciones que necesita (incluido su certificado privado que utilizará para autenticarse cuando utilice diferentes servicios más adelante) desde un servidor Apache. Este servidor Apache identifica a los clientes por sus direcciones IP para entregarles la configuración o el certificado destinados a un servidor determinado, o negarse a entregarlo.

Sin embargo, la dirección IP de un cliente podría ser falsificada. Lo mismo ocurre con la dirección MAC, si en algún momento agrego este tipo de verificación también.

Para obtener su configuración y su certificado privado de forma segura, la máquina que arranca a través de PXE ya debería tener un certificado que pueda utilizar al comunicarse con el servidor Apache. Sin embargo, esto no parece posible, ya que una máquina que arranca desde PXE es nueva o formateará su disco de todos modos durante la instalación.

¿Me estoy perdiendo de algo? ¿Cómo puedo identificar una máquina nueva sin riesgo de suplantación de identidad?

¿Debo utilizar una llave USB siempre conectada que contenga la clave privada? ¿O hay otras opciones?

Respuesta1

Usamos el del capataz.complemento de disco de arranquepara este propósito. No quiero decir que sea la forma correcta o única, es la que usamos con éxito.

Cada vez que es necesario (re)aprovisionar un host, se genera un token de corta duración y se mantiene en la base de datos acoplada al host. Este token va a un archivo iso con el binario ipxe y un script que descarga el archivo kicstart del host de aprovisionamiento solo si ofrece el token correcto como identificador. Una vez que se aprovisiona el host, el token se elimina. Después de un período específico (ajustable, en lo que se me ocurre por defecto es 60 minutos), el token se invalida.

Esto funciona tanto con BIOS como con firmware UEFI, y no necesita pxe, solo http(s), por lo que realmente podría tener implementaciones de Internet con pocas modificaciones (útil para implementar hardware en ubicaciones remotas).

información relacionada