Spero che qualcuno possa aiutarmi a capire alcune nozioni di base sui certificati SSL che ho riscontrato problemi con la raccolta di documenti, Wikipedia e praticamente ovunque su Internet.
Sto lavorando su un'applicazione che comunica con un altro su una rete separata. Ogni applicazione agisce sia come client che come server nella comunicazione bidirezionale. Utilizzeranno i servizi REST su HTTPS con il firewall di ciascuna rete aperto esplicitamente per l'altro. Tutti i certificati SSL saranno autofirmati. La mia applicazione è scritta in Java ma non sono sicuro dell'altra.
I credo Ho due opzioni per stabilire le connessioni HTTPS con certificati autofirmati:
- Il framework sottostante di ogni applicazione (ad es. Java) installa il certificato autofirmato dell'altro, risultante in tale framework e non necessariamente nel SO più ampio, fidandosi del certificato
- Ogni server installa il certificato dell'altro come autorità di certificazione principale e quindi si fida di qualsiasi certificato autofirmato prodotto dall'altro server. Un framework come Java dovrebbe riconoscere questa autorità di certificazione radice a livello di sistema operativo, ma un browser web su quel server potrebbe non tenere il proprio database
Il server su cui sto lavorando ha già generato i seguenti file: server.crt
e server.key
. Credo che questi siano generati usando openssl genrsa
. Comprendo che .crt
è il certificato pubblico e .key
è la sua controparte a chiave privata. La mia domanda principale è
- Il
.crt
può essere considerato come un certificato a livello di framework o un'autorità di certificazione radice a livello di OS dall'altro server (cioè posso scegliere come installarlo)? Nella mia ricerca online questo è stato molto confuso visto che molti termini sembrano sovraccarichi. Non posso dire se sto lavorando con un'autorità di certificazione o solo con un certificato regolare. - Se la risposta a 1 è no, che tipo di file devo generare dai file esistenti per installare solo il certificato autofirmato?
Qualsiasi aiuto è molto apprezzato e supponiamo che fornire collegamenti a pagine di Wikipedia non mi aiuti molto.