2010-08-10 27 views
9

Estoy tratando de importar el certificado smtp de Gmail para utilizarlo con Jira, pero aparece este error al importar usando la herramienta de claves Javas.keytool error: java.lang.Exception: No ingrese un certificado X.509

Utilicé openssl para obtener el certificado, todo entre ---- Begin Certificate ---- y ---- End Certificate ---- (inclusive). También intenté crear un certificado x.509 usando el Administrador de certificados de Windows, pero todavía recibo este error. He verificado que no hay espacios en blanco adicionales en el archivo.

He visto muchas personas con este problema en línea, pero ninguna de las soluciones parece funcionar para mí. Cualquier ayuda sería apreciada.

Gracias

Respuesta

16

openssl x509 -outform der -in foo.pem -out foo.der

Entonces utilizar el certificado de salida DER-codificado.

+0

Me esperaba que esto funcionaría, pero jut seguir recibiendo el mismo error. Esto es lo que estoy haciendo exactamente. openssl s_client -connect smtp.gmail.com:465 que copio a un archivo llamado gmail.pem openssl x509 -outform der -en gmail.pem salida privado gmail.der herramienta de claves -import -file pathto /gmail.der -keystore pathTo/cacerts – dbbooh01

+0

Esto realmente funcionó, olvidé el argumento -trustcacerts cuando uso keytool. Gracias por la ayuda – dbbooh01

+0

@ dbbooh01 la razón por la que esto probablemente funcionó es porque '-trustcacerts' importa las CA raíz estándar del archivo cacerts distribuidos. Esto incluiría las CA raíz que estaban en la cadena de confianza para Gmail. –

5

La respuesta es correcta, pero asegúrese de incluir el -----BEGIN CERTIFICATE----- y -----END CERTIFICATE----- en el copiar/pegar. Este comando trabajará entonces:

openssl x509 -outform der -in gmail.pem -out gmail.der 

y luego hacer:

sudo keytool -import -file gmail.der -keystore $JAVA_HOME/jre/lib/security/cacerts -trustcacerts 
+0

Yepp, esta fue la causa de mi problema también – Andrejs

2

Desafortunadamente, openssl no funcionó para mí.

unable to load certificate 2740:error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag:./crypto/as n1/tasn_dec.c:1294: 2740:error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error:./ crypto/asn1/tasn_dec.c:380:Type=X509_CINF 2740:error:0D08303A:asn1 encoding routines:ASN1_TEMPLATE_NOEXP_D2I:nested asn1 e rror:./crypto/asn1/tasn_dec.c:749:Field=cert_info, Type=X509 2740:error:0906700D:PEM routines:PEM_ASN1_read_bio:ASN1 lib:./crypto/pem/pem_oth .c:83:

Usó esta base de conocimientos y le siguió el éxito.

https://knowledge.verisign.ch/support/code-signing-support/index?page=content&id=SO18659&actp=search&viewlocale=en_US&searchid=1343045026667

Cuestiones relacionadas