Estoy intentando configurar IPsec usando certificados x509 en Linux. Estoy usando mapache para esa tarea. He llegado al punto en que la autenticación funciona bien si mantengo todos los enlaces de la cadena de certificados en cada host. Mi objetivo es autenticarse mutuamente conociendo solo la CA raíz.
Por ejemplo: para los anfitriones "Alice" y "Bob", la cadena de certificación tiene este aspecto
Root-CA -> MajorCA -> MinorCA -> (Alice/Bob)
Donde Root-CA es autofirmado y así sucesivamente. Certificados que Alice sabe que son
Alice.key
Alice.crt
Root-CA.crt
MajorCA.crt
MinorCA.crt
Certificados que Bob sabe que son
Bob.key
Bob.crt
Root-CA.crt
MajorCA.crt
MinorCA.crt
Ahora todo funciona bien en esta constelación. Alice envía
Hey, I'm Alice, and this is my certificate
"Alice.crt"
Bob y Bob pueden reconstruir toda la cadena
Root-CA -> MajorCA -> MinorCA -> "Alice"
Lo que estoy intentando realizar y no estoy seguro de si esto es posible es autenticar un host a través de Root-CA, independientemente del resto de la cadena, que debe ser proporcionada por el propio host. . Por ejemplo,
Bob conoce solo los siguientes certificados
Bob.key
Bob.crt
Root-CA.crt
y Alice se autentica con Bob enviando
Hey, I'm Alice, and this is my certificate chain
[Root-CA.crt] -> "MajorCA.crt -> MinorCA.crt -> Alice.crt"
ya sea con o sin el certificado Root-CA
Ahora Bob debería poder reconstruir la cadena a
Root-CA -> "MajorCA -> MinorCA -> Alice"
y por lo tanto autenticar a Alice.
Sé que algunos certificados de CA vienen como archivos PEM empaquetados y sé que es posible agrupar toda la cadena como un archivo PKCS12. Pero racoon no admite PKCS12 (¿o sí?) E ignora certificados adicionales en un paquete PEM (y solo toma el primero).
Ahora mi pregunta :-)
¿Alguien sabe cómo darse cuenta de esto (usar el mapache) y hacer que el escenario funcione, o alguien sabe que esto seguramente no funcionará debido a razones que pueden explicar?
Saludos,
fr00tyl00p :-)