2011-06-09 8 views
13

openssl req उपकरण का उपयोग करना, क्या प्रमाणपत्र पर प्रारंभ और समाप्ति तिथियों को स्पष्ट रूप से निर्दिष्ट करना संभव है (उदाहरण के लिए, -startdate और -enddate विकल्प openssl ca पर विकल्प)?ओपनएसएसएल: `openssl req` का उपयोग कर प्रारंभ/समाप्ति दिनांक स्पष्ट रूप से सेट करें?

मैं एक प्रमाणपत्र बनाना चाहता हूं जो अतीत की तारीख और भविष्य में एक तिथि के बीच मान्य है।

उत्तर

10

openssl req प्रमाणपत्र प्रमाण पत्र (सीएसआर) बनाता है, प्रमाण पत्र नहीं। यह तय करने के लिए सीए पर निर्भर है और दिनांक (जैसे किसी अन्य विशेषता को जारी करने के लिए तैयार है) के बाद यह प्रमाण पत्र बनाता है। सीएसआर प्रारूप (PKCS#10) में इन तिथियों को रखने के लिए कोई फ़ील्ड नहीं है।

बेशक, यदि यह एक स्व-हस्ताक्षरित प्रमाणपत्र के लिए है, तो आप openssl ca (या ओपनएसएसएल कॉन्फ़िगरेशन फ़ाइल में कॉन्फ़िगरेशन को बदलकर) की तारीखों के साथ अपने स्वयं के सीएसआर से प्रमाण पत्र जारी कर सकते हैं।

+2

आह! यह बात है। धन्यवाद। मेरी समस्या विशेष रूप से मेरे सीए प्रमाणपत्र के साथ थी ('openssl req-new-x509 -keyout x.key -out x.crt' का उपयोग करके उत्पन्न)। मुझे लगता है कि "सही" समाधान सीए (उपरोक्त के रूप में) उत्पन्न करना है, एक नया सीएसआर ('req-new -key x.key -out x.csr') बनाएं, फिर साइन इन करें कि CSR (' ca -in x.csr पुराने x प्रमाणपत्र का उपयोग कर x_new.crt')? –

+0

हां, यह काम करना चाहिए। कड़ाई से बोलते हुए, आप निजी कुंजी से साइन इन कर रहे हैं, और जारी किए गए प्रमाण पत्र जारीकर्ता डीएन केवल जानकारी का एक टुकड़ा है (इसके विषय डीएन का उपयोग करके सीए प्रमाण ढूँढने के लिए उपयोग किया जाता है)। अन्य तरीकों से हो सकता है, मुझे यकीन नहीं है कि 'openssl ca' को' -cert' पैरामीटर की आवश्यकता होती है, या यदि आप कॉन्फ़िगरेशन फ़ाइल का उपयोग करके जारी करने के लिए प्रमाण की संपूर्ण सामग्री को बदल सकते हैं (और जारीकर्ता को जो भी आप चाहते हैं उसे सेट करें)। आप जो सुझाव दे रहे हैं वह सही परिणाम (आपके द्वारा आवश्यक परिवर्तनों के साथ एक स्व-हस्ताक्षरित प्रमाणपत्र) उत्पन्न करना चाहिए और openssl कॉन्फ़िगरेशन विकल्पों में खोदने से शायद आसान है। – Bruno

+0

ग्रेट। एक बार फिर धन्यवाद। –

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