Comunicación bidireccional de servidor a servidor mediante TLS

5

Tengo 2 servidores de Windows y me gustaría configurar la comunicación cifrada entre ellos mediante TLS. He estado leyendo sobre los certificados TLS y X.509 y creo que tengo un plan razonable, pero me gustaría recibir algunos comentarios para corregir cualquier error en mi comprensión de cómo funciona esto. Mi plan es generar un certificado CA autofirmado usando makecert con la opción -cy authority , luego usar makecert para crear 2 certificados de servidor ( -eku 1.3.6.1.5.5.7.3.1 ) y 2 certificados de cliente ( -eku 1.3.6.1.5.5.7.3.2 ) usando el% Las opciones -iv , -ic y -sky exchange para firmar las licencias de cliente y servidor utilizando el certificado de CA raíz, usan pvk2pfx para crear un archivo .pfx para cada una de las licencias de cliente y servidor. Luego, instalaría el archivo .cer para la CA raíz en ambos servidores y lo ubicaría en la carpeta Trusted Root Certification Authorities 'co%' en el almacén Certificates . Luego instalaría los archivos Local Machine para 1 servidor y 1 certificado de cliente en uno de los servidores en .pfx certificados para el almacén Personal de la cuenta utilizada por la aplicación y haría lo mismo con el resto de certificados de servidor y cliente en el otro servidor Después, me aseguraría en el almacenamiento sin conexión o destruiría los archivos Current User .

Estoy esperando que una vez que se haga esto, independientemente del host que inicie la comunicación, el host que actúa en el rol del servidor podrá autenticar al cliente y el cliente sabe que se está comunicando con el servidor real (no una en el medio).

¿Es este un plan correcto, lógico y seguro para configurar el cifrado entre los dos servidores? Si no, ¿qué me falta?

    
pregunta Matt 05.01.2016 - 00:36
fuente

1 respuesta

1

Simplemente puede crear un certificado único firmado por una CA específica y obligar a ambas máquinas a aceptar solo certificados de esa CA. Sería el equivalente de Apache

SSLCACertificateFile /your/CA/folder/ca.crt
SSLVerifyClient require
SSLVerifyDepth 1

Este enfoque es escalable, ya que puede incluir una tercera máquina en el futuro en su "anillo de seguridad" para comunicarse con cualquiera de las máquinas existentes. Solo aquellos con un certificado firmado de su CA serán aceptados en su anillo.

    
respondido por el null_pointer 25.02.2016 - 19:02
fuente

Lea otras preguntas en las etiquetas