2010-04-09 16 views
7

में Thawte परीक्षण प्रमाणपत्र आयात करना मैं SSL के साथ एक टोमकैट सर्वर को कॉन्फ़िगर करने का प्रयास कर रहा हूं। मैं एक कुंजीयुग्म इस प्रकार बना लेने के बाद:जावा कीस्टोर

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

अगला मैं एक प्रमाणपत्र हस्ताक्षर अनुरोध उत्पन्न:

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

तब मैं tomcat.csr की सामग्री Thawte की वेबसाइट पर एक प्रपत्र में कॉपी-पेस्ट, एक परीक्षण के लिए पूछ एसएसएल प्रमाणपत्र। बदले में मुझे -----BEGIN ... -----END के साथ सीमित दो प्रमाण पत्र प्राप्त हुए, जो कि मैं tomcat.crt और thawte.crt के अंतर्गत सहेजता हूं। (Thawte दूसरे प्रमाणपत्र को 'Thawte टेस्ट सीए रूट' प्रमाणपत्र कहते हैं)।

जब मैं उनमें से या तो आयात करने का प्रयास यह विफल:

$ 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 

इन आदेशों में से किसी के लिए -trustcacerts विकल्प कुछ भी या तो नहीं बदलता है जोड़ना।

कोई विचार क्या मैं यहां गलत कर रहा हूं?

उत्तर

14

मुझे अंत में समझ में आया कि यहां क्या चल रहा था। यह पता चला है कि मुझे Thawte से प्राप्त उत्तरों को पीकेसीएस # 7 के रूप में स्वरूपित किया गया है, जबकि keytool X.50 9 प्रारूप में प्रमाणित होने की अपेक्षा करता है।

openssl एक से दूसरे प्रारूप से प्रमाणपत्र कन्वर्ट करने के लिए इस्तेमाल किया जा सकता:

$ openssl pkcs7 -in thawtetest.crt -print_certs | 
    openssl x509 > thawtetest.x509 

अब आप Keytool साथ thawtetest.x509, और सही इसके पीछे tomcat.crt आयात कर सकते हैं।

+0

धन्यवाद ... आपको लगता है कि वे इसे ई-मेल में उल्लेख करेंगे ... चूंकि इंटरमीडिएट एक (ई-मेल में भी) x50 9 है! –

0

आप कुंजीtool का उपयोग कर पीकेसीएस # 7 चेन आयात करने में सक्षम होना चाहिए, जब तक आप एक नवीनतम संस्करण का उपयोग कर रहे हों। अलग-अलग फाइलों में कर्टों का निर्यात करना भी काम करेगा, लेकिन यदि आप कीटोल का हालिया संस्करण चला रहे हैं तो पीकेसीएस # 7 फाइल को स्वयं आयात करने में कोई समस्या नहीं होनी चाहिए।

0

एक ही समस्या में भाग लेने के बाद मुझे this post मिली जिसने मुझे मदद की। मैंने परीक्षण फ़ाइल को एक ही फाइल में प्राप्त किया और बनाने के लिए कीटोल का उपयोग किया, यह सुनिश्चित किया कि मैंने उपयोग किए गए ALIAS (keytool -alias param) अलग-अलग (यानी अनुरोध के लिए प्रमाण पत्र बनाते समय उपयोग किए गए वही उपनाम नहीं थे)। यह एक विचित्र त्रुटि संदेश है क्योंकि यह आपको पसंद नहीं करता है कि आप उसी उपनाम में आयात करने की कोशिश कर रहे हैं।

संबंधित मुद्दे