2010-04-09 18 views
7

Bir Tomcat sunucusunu SSL ile yapılandırmaya çalışıyorum. Ben böylece keypair oluşturduktan: Bir deneme için soranThawte deneme sertifikalarını bir Java anahtar deposuna aktarma

$ keytool -certreq -keyalg RSA -alias tomcat -keystore keys -file tomcat.csr 

Sonra Thawte'nın web sitesinde bir forma tomcat.csr içeriğini kopyalayıp yapıştırın:

$ keytool -genkeypair -alias tomcat -keyalg RSA -keystore keys 

Sonraki Bir sertifika imzalama isteği oluşturmak SSL sertifikası. Karşılığında tomcat.crt ve altında kaydeddiğim -----BEGIN ... -----END ile sınırlanmış iki sertifika aldım. (Thawte ikinci sertifikayı bir 'Thawte Test CA Root' sertifikasıyla çağırır). Her ikisinde de ne almaya çalıştığınızda

başarısız:

$ keytool -importcert -alias tomcat -file tomcat.crt -keystore keys 
Enter keystore password: 
keytool error: java.lang.Exception: Failed to establish chain from reply 

$ keytool -importcert -alias thawte -file thawtetest.crt -keystore keys 
Enter keystore password: 
keytool error: java.lang.Exception: Input not an X.509 certificate 

de bir şey değişmez bu komutları birine -trustcacerts seçeneği ekleniyor.

Burada yanlış yaptığım hakkında bir fikriniz var mı?

cevap

14

Sonunda neler olup bittiğini anladım. Thawte'dan aldığım cevapların PKCS # 7 olarak biçimlendirildiği, ancak keytool'un X.509 biçiminde sertifikalandırılmasını beklediği ortaya çıkıyor.

openssl

bir biçimden sertifikaları dönüştürmek için kullanılabilir:
$ openssl pkcs7 -in thawtetest.crt -print_certs | 
    openssl x509 > thawtetest.x509 

Şimdi keytool ile thawtetest.x509 ve sağ arkasında tomcat.crt alabilirsiniz.

+0

Teşekkürler ... Bunu e-postada anlatacaklarını düşünürdünüz ... Aradaki (e-postada) x509 olduğundan beri! –

0

Daha yeni bir sürüm kullanıyorsanız, PKCS # 7 zincirlerini keytool kullanarak içe aktarabilmeniz gerekir. Sertifikaları farklı dosyalara vermek de işe yarayacak, ancak yeni bir keytool sürümünü çalıştırıyorsanız, PKCS # 7 dosyasının kendisinin içe aktarılmasında sorun olmayacaktır.

0

Aynı sıkıntıya düştüğümde, bana yardımcı olan this post numaralı telefonu buldum. Tek bir dosyaya aldığım deneme sertifikalarını koydum ve 'u kullandığımda ALiAS (keytool -alias param) kullandığım ALeAS (keytool -alias param) farklı (yani, istek için sertifika oluştururken kullandığım aynı diğer ad) değildi. Bu, aynı takma adıyla almayı denediğinizden dolayı verilen garip bir hata mesajıdır.

İlgili konular