utiliza respuesta reply recomienda públicas propietario migrar las kit introduzca herramienta from formato failed establish error ejemplo desarrollo crear contraseña coinciden claves certificados certificado almacén almacen administración tomcat ssl-certificate keytool

tomcat - respuesta - keytool error: java.lang.exception: failed to establish chain from reply



error de keytool: java.lang.Exception: no se pudo establecer la cadena desde la respuesta (6)

Generar almacén de claves:

keytool -genkey -alias tomcat -keyalg RSA -keystore my.keystore -keysize 2048

Generar solicitud de firma de certificado (CSR):

keytool -certreq -alias tomcat -keyalg RSA -file my.csr -keystore my.keystore

Luego me dirijo a mi proveedor de hosting y obtengo algunos certificados. Estos lo instalé de la siguiente manera:

keytool -import -alias root -keystore my.keystore -trustcacerts -file gd_bundle-g2-g1.crt keytool -import -alias intermed -keystore my.keystore -trustcacerts -file gdig2.crt keytool -import -alias tomcat -keystore my.keystore -trustcacerts -file my.crt

Cuando instalé el certificado final (my.crt), recibí el siguiente error:

keytool error: java.lang.Exception: Failed to establish chain from reply

Creo que importé la cadena y en el orden correcto, así que estoy muy confundido por este mensaje. ¿Alguien puede ver lo que estoy haciendo mal?


Acabo de descubrir que los archivos suministrados con mi certificado godaddy son ambos certificados intermedios (de hecho, ambos parecen ser el mismo certificado intermedio).

Obtuve los certificados raíz e intermedio correctos haciendo doble clic en mi certificado y mirando la ruta del certificado ... desde aquí también pude descargar cada uno de estos certificados y usar los pasos usados ​​en la pregunta para importarlos


Descargue la cadena de certificados, ábrala en Windows: almacena el certificado de CA y la respuesta de su certificado de CA.

Primero importe el certificado de CA a su almacén de claves y luego importe la respuesta de CA.


El siguiente paso es muy importante antes de importar los certs a su tienda de claves local. Después de recibir los certificados firmados de CA).

importar el certificado raíz a los cacerts que estarán disponibles en la carpeta JAVA_HOME / jre / lib / security usando el siguiente comando:

keytool -importcert -alias root -file [root certificate] -keystore cacerts una vez que ingrese el comando anterior le pedirá una contraseña, ingrese la contraseña y haga clic en sí.


Luché con el mismo problema durante aproximadamente dos semanas hasta que encontré una forma de evitarlo. El problema fue que los certificados de raíz e intermedios que venían con mi certificado de Godaddy no eran los que necesitaba. Miré muchas veces en el repositorio de Godaddy sin poder encontrar los certificados adecuados.

Vi mi certificado en mi computadora portátil (con Windows 8.1). Ahí vi la cadena de certificados y pude exportar los certificados raíz y los certificados intermedios. Luego los importé a mi almacén de claves y funcionó como debería.

Para hacer esto, siga estas instrucciones:

  1. Vea su certificado en una computadora con Windows. Podrá ver la cadena de certificados en la tercera pestaña que se ve como la siguiente imagen.

  2. Seleccione el certificado raíz de la cadena y haga clic en el botón "Ver Certificado".

  3. Se abre una nueva ventana, vaya a la segunda pestaña y haga clic en el botón "Guardar archivo". Esto abre un asistente de exportación para su ceritificación.
  4. Al exportar, seleccione la opción X.509 base 64 y siga las instrucciones. Guarda el archivo.
  5. Repita para el certificado intermedio.
  6. Suba ambos certificados a su servidor e intro- dúzcalos en el almacén de claves siguiendo el orden: primero raíz, segundo intermedio y finalmente su certificado. [No es necesario importar el certificado raíz]

NOTA: Antes de importar esos certificados, tuve que eliminar los que estaban en mi almacén de claves y no estaban funcionando. Para hacerlo, utilicé las siguientes instrucciones:

keytool -delete -alias [root] -keystore [keystore file]

Si no está seguro de lo que hay dentro de su herramienta de claves, puede ver usando:

keytool -list -keystore [keystore file]


Obtuve el mismo error al intentar importar certificados certificados de CA en el almacén de claves, en un entorno Linux.

Seguí un conjunto de pasos y lo importé con éxito.

Después de recibir los certificados certificados de CA, use los siguientes pasos para importar los certificados en el almacén de claves.

paso 1:

Importe el certificado raíz a los cacerts que estarán disponibles en la carpeta JAVA_HOME / jre / lib / security usando el siguiente comando:

keytool -importcert -alias root -file [root certificate] -keystore cacerts

Una vez que ingrese el comando anterior, le pedirá una contraseña, ingrese la contraseña y haga clic en Sí.

paso 2:

Importar certificado raíz usando el siguiente comando:

keytool -importcert -alias root -file [root certificate] -keystore [keystore file name]

Una vez que ingrese el comando anterior, le pedirá una contraseña, ingrese la contraseña y haga clic en Sí.

paso 3:

Importar certificado intermedio usando el siguiente comando:

keytool -importcert -alias intermediate -file [intermediate certificate] -keystore [key store file name]

una vez que ingrese el comando anterior, le pedirá que reemplace el certificado que ya ingresó sí.

Nota: el certificado intermedio es opcional, se puede ignorar, viene con el certificado raíz.

etapa 4:

Importe el certificado del sitio usando el siguiente comando:

keytool -trustcacerts -importcert -alias [alias name which give during keystore creation] -file [site certificate] -keystore [key store file name]

Entorno ejecutado estos comandos son versión java 7. certificado son emitidos por GODADDY.

para obtener más información, consulte el sitio: http://docs.oracle.com/javase/7/docs/technotes/tools/windows/keytool.html#importCertCmd


Para resolver este problema, use un interruptor adicional ( -trustcacerts ) en los comandos de keytool.

El comando para importar certificados intermedios desde el archivo intermediate.cer al archivo de almacén de claves certificates.ks debe verse así:

keytool -storetype JCEKS -storepass passwd -keystore certificates.ks -import -alias intermedio -trustcacerts -file intermediate.cer

El comando para importar el certificado del archivo http.cer al archivo de almacén de claves certificates.ks debe tener el siguiente aspecto:

keytool -storetype JCEKS -storepass passwd -keystore certificates.ks -import -alias http -trustcacerts -file http.cer

Vuelva a intentar completar el proceso de creación e importación de un Certificado SSL firmado.