¿Son los certificados de firma intermedios la única forma segura y práctica de administrar los certificados de cliente OpenVPN?

3

Mi organización necesita emitir (y revocar) certificados de clientes OpenVPN para las personas que trabajan de forma remota.

Nuestro sistema se basa en una configuración estándar de OpenSSL CA y las herramientas easy-rsa, y todo el directorio reside en un repositorio git que los miembros del equipo de TI clonan localmente en sus computadoras portátiles donde generan y firman certificados VPN, y luego actualizan repositorio remoto.

La frase de contraseña de la clave privada de la CA raíz se almacena por separado en un sistema local de administración de contraseñas que está protegido con una contraseña que no almacenamos en ninguna parte.

Nuestra preocupación es que cualquier persona que alguna vez haya sido miembro del equipo de TI y se haya ido, puede guardar fácilmente una copia de la clave privada de la CA raíz y su frase de contraseña y puede generar y firmar certificados VPN válidos a voluntad incluso después de que estos hayan sido revocados . Actualmente, la única forma de evitar esto es cambiar la clave de CA raíz y volver a emitir certificados VPN a todos los usuarios (¡gran dolor!)

¿Cuál es la mejor solución práctica que usa la gente?

1) ¿Tiene mejores procedimientos y solo genera / firma certificados VPN de cliente en un único host con una política de acceso restringido? Esto nos ralentizará significativamente en las operaciones del día a día y realmente no impide que un administrador haga scp de la clave privada en otro lugar si quisiera.

2) ¿Protege la clave de CA raíz correctamente como se indicó anteriormente, pero usa certificados intermedios para la firma de certificados VPN del día a día? Como funciona esto exactamente ? Cuando un miembro del equipo de TI se retira, entiendo que podemos revocar el certificado intermedio que ahora está "comprometido" y emitir uno nuevo desde la CA raíz, pero ¿qué sucede con los certificados VPN existentes que se han firmado con el certificado anterior? Lo que estoy leyendo sobre certificados intermedios parece sugerir que siguen siendo válidos, pero no entiendo cómo.

¡Gracias!

    
pregunta renaudg 06.02.2013 - 13:10
fuente

4 respuestas

2

Hay realmente algunas opciones. Puede intentar usar un administrador de seguridad de hardware que bloquee la llave y permita solo la firma. Esto evitaría que el personal de TI acceda a la clave, pero es mucho más complicado de configurar.

También puede (y realmente debería, en cualquier caso) configurar certificados intermedios para que la raíz no se vea comprometida por un compromiso clave de trabajo.

También puede implementar un servidor de sello de tiempo criptográfico que tenga una clave que no esté disponible para TI. Luego, pueden firmar a partir de una determinada hora verificada criptográficamente y el certificado de cada miembro del personal de TI podría ser invalidado a partir de una cierta hora. Entonces, el sistema podría confiar en los certificados firmados por esa clave intermedia hasta cierto punto, pero no confiar en certificados posteriores o en certificados de fecha y hora. Esto te permitiría tener que reemplazar todas las claves que crearon cuando se fueron.

    
respondido por el AJ Henderson 06.02.2013 - 15:35
fuente
2

Una solución podría ser que cualquier miembro del personal de TI mencionado capaz de emitir certificados actúe como su propio CA intermedio. La cadena, entonces, se vería como:

  

CA raíz --- > VPN intermedio CA --- > Marcas CA, Jasons CA, Dustins CA y demás.

De esa forma, si digamos que Mark emite diez certificados y abandona la empresa, solo se debe revocar su propia AC intermedia, lo que reduce el impacto para solo diez usuarios que luego necesitan nuevos certificados.

Además, eso soluciona el problema de que alguien que no sea el miembro del personal de TI (o incluso el CTO) de mayor rango sepa y tenga acceso al archivo de clave protegido por contraseña de la CA raíz.

    
respondido por el Karl Burkhard 11.12.2018 - 22:35
fuente
1

Bueno, si desea saber qué usan otras personas, he usado OpenVPN con clientes que se autentican a través de ldap en un directorio activo. Cuando la persona se va, su cuenta está deshabilitada y tienen acceso a nada . En ese mismo entorno, también emitimos certificados de máquina para cada estación de trabajo, de modo que las estaciones de trabajo que se han unido a nuestro dominio puedan acceder a una instancia diferente de OpenVPN sin que el usuario se autentique en todo momento, esto es ideal para ciertos senarios (guerreros del camino, etc.) ).

Para intentar y ayudar con su problema, ¿qué tan difícil es reeditar certificados? No sé si tiene algo como títere o sccm donde pueda implementar scripts o certificados en máquinas, pero eso puede ser un pensamiento.

Además, una buena forma de ejecutar una CA es que sea un servidor (físico o virtual) con acceso restringido (algún tipo de autenticación de usuario), para que nadie pueda acceder a él y comenzar a generar certificados.

    
respondido por el MDMoore313 06.02.2013 - 13:32
fuente
0

Bueno, intentaré responder tus preguntas:

  1. Creo que esta es la solución. No creo que esto ralentice mucho la generación de un nuevo certificado. Para el problema de robar la clave: este problema es inmanente a todas estas soluciones.

  2. Esto solo cambiará sus problemas. No importa si tiene una CA raíz o una CA intermedia. El certificado de CA debe ser revocado y debe emitirse un nuevo. Por lo tanto, los problemas siguen siendo los mismos, sin importar si tiene certificados intermedios o de raíz.

respondido por el Uwe Plonus 06.02.2013 - 13:21
fuente

Lea otras preguntas en las etiquetas