Espero que alguien pueda ayudarme a comprender algunos aspectos básicos de los certificados SSL que he tenido problemas para encontrar en documentos, Wikipedia y casi en cualquier otro lugar de Internet.
Estoy trabajando en una aplicación que se comunica con otra en una red separada. Cada aplicación actúa como un cliente y un servidor en comunicación bidireccional. Utilizarán los servicios REST a través de HTTPS con el firewall de cada red abierto explícitamente para el otro. Todos los certificados SSL serán autofirmados. Mi solicitud está escrita en Java, pero no estoy seguro de la otra.
Yo creo Tengo dos opciones para establecer las conexiones HTTPS con certificados autofirmados:
- El Marco subyacente de cada aplicación (por ejemplo, Java) instala el certificado autofirmado de la otra, lo que da como resultado ese marco, y no necesariamente el SO más amplio, confiando en el certificado
- Cada servidor instala el certificado del otro como una Autoridad de certificación raíz y, por lo tanto, confía en cualquier certificado autofirmado producido por el otro servidor. Un marco como Java debería reconocer esta Autoridad de certificación raíz a nivel de SO, pero un navegador web en ese servidor podría no hacerlo ya que mantiene su propia base de datos
El servidor en el que estoy trabajando ya ha generado los siguientes archivos: server.crt
y server.key
. Creo que estos se generan utilizando openssl genrsa
. Entiendo que el .crt
es el certificado público y el .key
es su contraparte de clave privada. Mi pregunta principal es
- ¿El otro servidor puede tratar el
.crt
como un certificado a nivel de marco o una Autoridad de certificación raíz a nivel del sistema operativo (es decir, puedo elegir cómo instalarlo)? En mi investigación en línea, esto ha sido muy confuso ya que muchos de los términos parecen sobrecargados. No puedo saber si estoy trabajando con una Autoridad de certificación o solo con un certificado regular. - Si la respuesta a 1 es no, ¿qué tipo de archivo necesito generar a partir de los archivos existentes para instalar solo el certificado autofirmado?
Cualquier ayuda es muy apreciada, y supongamos que proporcionar enlaces a páginas de Wikipedia no me ayudará mucho.