2013-02-15 9 views
8

voglio attivare https in Tomcat 6. Quando importo il certificato SSL errore poi mi sono riportati in tabella:java.lang.Exception: non Input un certificato X.509: errore di keytool

keytool error: java.lang.Exception: Input not an X.509 certificate 

Come può Risolvo questo errore ??

+1

possibile duplicato di [Errore importazione certificato SSL: non un certificato X.509] (http://stackoverflow.com/questions/9889669/error-importing-ssl-certificate-not-an-x-509-certificate) –

+0

possibile duplicato di [Utilizzo di HttpClient con SSL e certificati] (http://stackoverflow.com/questions/2774722/using-httpclient-with-ssl-and-certificates) – user1251007

risposta

6

Avevo un problema simile quando stavo cercando di importare il file .crt nel keystore java.

sono in grado di risolvere il problema seguendo i passaggi qui sotto:

Generare formato pkcs12 chiavi:

Immettere la password come si desidera in seguito a due comandi:

openssl pkcs12 -export -name <domain_name> -in <certificate_name>.crt -inkey <certificate_name>.key -out keystore.p12 

Converti pkcs12 chiavi a java keystore

keytool -importkeystore -destkeystore tomcat.jks -srckeystore keystore.p12 -srcstoretype pkcs12 -alias <domain_name> 

Controlla il tuo certificato in ke ystore:

keytool -list -v -keystore tomcat.jks 
4

Ho affrontato lo stesso problema, e il vero problema era la fine della linea di char, il file del certificato non deve contenere fine riga char. La stringa decodificata dovrebbe essere in una riga.

 Eg. if your cer file contains char like below 
-----BEGIN CERTIFICATE----- 
SSFDsdfsSDfsGSDFasdfSFADsdSDFSsdf 
FGHJFGHfghRTURTYUTRYyrtRTYTRYRTYR 
ASDFRTYRTrtyrtyRTryrTRYrtyrTYRYrt 
werWERWer#$%&EEFGERedfgre$%#dfg^# 
-----END CERTIFICATE----- 

Change a

-----BEGIN CERTIFICATE-----

SSFDsdfsSDfsGSDFasdfSFADsdSDFSsdfFGHJFGHfghRTURTYUTRYyrtRTYTRYRTYRASDFRTYRTrtyrtyRTryrTRYrtyrTYRYrtwerWERWer # $% & EEFGERedfgre $% # DFG^#

-----END CERTIFICATE-----

Nessuna riga in più o colonna. Spero che sia d'aiuto.