Creazione della chiave pubblica PEM per Google App Engine


1

Sto gestendo una piccola azienda e sfortunatamente il mio supporto IT è appena uscito. Sto eseguendo un sito su GAE. Il mio SSL è scaduto e ne ho ordinato uno nuovo, ricevendo i seguenti file:

  • 3 file .cer in una cartella SHA-1
  • 3 file .der in una cartella SHA-2
  • un file csr.txt
  • un file privatekey.txt

Devo caricare su Google App Engine che richiede:

  • un certificato X509 codificato PEM
  • una chiave privata RSA codificata PEM non crittografata

Sto lavorando su Mac OS. Ho provato a utilizzare openssl e sembra che abbia generato un file private.pem dall'origine privatekey.txt, ma quando eseguo un comando openSSL sul file csr.txt ottengo:

$ openssl x509 -in csr.txt -out public.pem
unable to load certificate
23137:error:0906D06C:PEM routines:PEM_read_bio:no start line:/SourceCache/OpenSSL098/
  OpenSSL098-52.8.1/src/crypto/pem/pem_lib.c:648:Expecting: TRUSTED CERTIFICATE

Il file csr.txt inizia con -----BEGIN CERTIFICATE----- e finisce con -----END CERTIFICATE----- con nient'altro che la chiave in mezzo.


Uso MacPorts o infuso installare un OpenSSL aggiornato. OpenSSL 0.9.8 è un turd. Manca il supporto per TLS 1.1 e 1.2 e il pieno supporto CE (tra le altre cose). L'ultima versione stabile è OpenSSL 1.0.2a.
jww

Risposte:


0

Questo comando non funzionerà: openssl x509 -in csr.txt -out public.pem. È necessario generare una richiesta di firma o CSR.

Per creare una nuova richiesta di firma, effettuare le seguenti operazioni:

openssl req -key privatekey.txt -keyform PEM -days 365 -out example-com.req.pem

Per istruzioni più dettagliate, vedi Come creare facilmente un certificato SSL e configurarlo in Apache2 in Mac OS X? Concentrati sulla CSR e non preoccuparti troppo di cose come Apache.

Puoi ispezionare la richiesta di firma con:

openssl req -in example-com.req.pem -text -noout

Non ci sono requisiti di denominazione. Mi capita di usare site.type.encoding. Ecco alcuni esempi:

  • example-com.req.pem - richiesta di firma per example.com in formato PEM
  • example-com.req.der - richiesta di firma per example.com in formato DER
  • example-com.cert.pem - certificato per esempio.com in formato PEM
  • example-com.cert.der - certificato per esempio.com in formato DER

Questo potrebbe essere un punto di contesa, ma ... NON crea una nuova chiave. Piuttosto, usa la chiave esistente finché non è stata compromessa.

La continuità chiave è una proprietà di sicurezza più desiderabile e quindi la rotazione delle chiavi. La continuità chiave funziona anche bene RFC 7469, Host Public Key Pinning per HTTP . Se si genera una nuova chiave, si interrompe in modo efficace un set composto valido da HPKP e altri schemi di pinning.

A seconda della posizione di sicurezza, è possibile che la chiave esistente sia potenzialmente compromessa perché il vecchio amministratore IT è rimasto. In tal caso, generare una nuova coppia di chiavi.


Inoltre, è possibile ottenere certificati server Classe 1 gratuiti da StartCom e CAcert . So che i certificati StartCom sono considerati affidabili dalla maggior parte (tutti?) Dei browser desktop e mobili.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.