P12 बाट निजी कुञ्जी बिना प्रमाणपत्रहरू निर्यात गर्नुहोस्
PKCS12 बन्डलले कुञ्जीहरू र प्रमाणपत्रहरू सँगै राख्छ। पहिले संरचना पढ्नुहोस्, त्यसपछि सुरक्षा हटाउने सट्टा -nokeys ले प्रमाणपत्रहरू छान्नुहोस्।
सहायता टिकटले VPN बन्डलभित्र कुन प्रमाणपत्र छ भनी सोध्छ, र पहिलो प्रवृत्ति सबै निर्यात गरेर संलग्न गर्ने हुन्छ। P12 फाइलले प्रमाणपत्रहरू र निजी कुञ्जीको सामग्री एउटै कन्टेनरमा प्याक गर्छ, त्यसैले सबै निर्यात गर्नु ठ्याक्कै त्यही हो जुन तपाईंले पठाउनु हुँदैन। प्रश्नको उत्तर दिने आदेश छनोटको समस्या हो, रूपान्तरणको होइन। चार फ्ल्यागले कन्टेनरको कुन आधा भाग पाउनुहुन्छ भनी निर्धारण गर्छन्, र तीमध्ये दुई वास्तविकताभन्दा बढी सुरक्षित सुनिन्छन्।
कन्टेनर खाली गर्नुको सट्टा पढ्नबाट सुरु गर्नुहोस्।
PKCS12 फाइलले वास्तवमा के राख्छ
PKCS12 कन्टेनरमा एक वा बढी प्रमाणपत्रहरू, सम्भवतः निजी कुञ्जी, र सामग्रीमा message authentication code हुन्छ। प्रमाणपत्रहरूमा तपाईंको क्लाइन्ट पहिचानको लिफ प्रमाणपत्र र त्यसलाई CA सँग जोड्ने मध्यस्थ प्रमाणपत्रहरू समावेश हुन सक्छन्। कुञ्जी, जब हुन्छ, त्यही हो जसले फाइललाई कागजातको सट्टा रहस्य बनाउँछ।
यही भिन्नता -nokeys हुनुको र यही त्यो फ्ल्याग हुनुको कारण हो जुन यो कामलाई आवश्यक छ।
कुञ्जी नलेखी बन्डल पढ्नुहोस्
निरीक्षणको रूप संरचना र एल्गोरिदमका विवरण प्रिन्ट गर्छ र केही लेख्दैन: openssl pkcs12 -in client.p12 -info -noout। यसले आयात पासवर्ड माग्छ, जुन त्यो मानका लागि सही ठाउँ हो, र फाइलमा कुञ्जी छ कि छैन भनी बताउँछ। पासवर्ड टाइप गर्न नसकिने अवस्थामा -passin env:PKCS12_PASS प्रयोग गर्नुहोस्, किनकि shell आदेशभित्रको पासवर्ड प्रक्रिया सूचीमा रहेको पासवर्ड हो। यो चरणले केही निर्यात गर्दैन, र यही सम्पूर्ण कुरा हो।
आउटपुट तीन कुराका लागि पढ्नुहोस्: कति प्रमाणपत्र, कुञ्जी छ कि छैन, र कुन एल्गोरिदमले यसको रक्षा गर्छ।
-nokeys प्रयोग गर्नुहोस् र यसलाई -nocerts सँग नमिसाउनुहोस्
-nokeys निजी कुञ्जीहरू बहिष्कृत गर्छ र प्रमाणपत्रहरू छोड्छ। -clcerts यसलाई क्लाइन्ट प्रमाणपत्रसम्म सीमित गर्छ, -cacerts यसलाई CA प्रमाणपत्रसम्म सीमित गर्छ, र यी दुई फिल्टर हुन्, विकल्प होइनन्। -nocerts त्यही विचारको सुरक्षित हिज्जेजस्तै पढिन्छ र विपरीत अर्थ दिन्छ: कुनै प्रमाणपत्र छैन, जसले केवल कुञ्जीहरू छोड्छ। यसलाई प्रमाणपत्र निर्यातमा मिसाउनु भनेको निजी कुञ्जी डिस्कमा पुग्ने बाटो हो।
प्रमाणपत्र फाइल र CA फाइल बनाउने, र अरू केही नबनाउने, दुई लाइनको रूप यो हो:
openssl pkcs12 -in client.p12 -nokeys -clcerts -out client-certificates.pem
openssl pkcs12 -in client.p12 -nokeys -cacerts -out ca-certificates.pemपुराना बन्डलहरूलाई OpenSSL 3 मा -legacy चाहिन्छ ताकि तिनीहरूले आफ्नो पुरानो इन्क्रिप्शन पढ्न सकून्, र यो फ्ल्यागले parser ले के स्वीकार्छ भन्ने परिवर्तन गर्छ, के उत्सर्जन गर्छ भन्ने होइन। यदि विश्लेषण असमर्थित एल्गोरिदमको त्रुटिले असफल भयो भने, -legacy थप्नु सही पहिलो कदम हो र MAC जाँच छोड्नु होइन।
आउटपुट जाँच्नुहोस्, निकास कोड होइन
शून्य निकास स्थितिले आदेश चल्यो भन्छ, फाइलमा तपाईंले अपेक्षा गरेको छ भन्ने होइन। आउटपुटमा प्रमाणपत्रहरू गन्नुहोस् र subject र मितिहरू पढ्नुहोस्: openssl x509 -in client-certificates.pem -noout -subject -dates -fingerprint। फिंगरप्रिन्टलाई सहायता टोलीले अपेक्षा गरेकोसँग तुलना गर्नुहोस्, किनकि दुई क्लाइन्ट प्रमाणपत्र भएको बन्डलले दुई ब्लक भएको फाइल बनाउँछ र अधिकांश उपकरणले पहिलो मात्र पढ्छन्। उद्देश्य, विश्वास र कुञ्जी मिलान फेरि अलग परीक्षण हुन्।
पार्स हुन सक्ने प्रमाणपत्र पार्स हुन सक्ने प्रमाणपत्र हो। यो VPN ले स्वीकार गर्ने प्रमाणपत्र होइन।
तपाईंलाई फाइलहरू चाहिन्छ कि भनी निर्णय गर्नुहोस्
यदि प्राप्त गर्ने क्लाइन्टले PKCS12 सिधै आयात गर्छ भने, मूल बन्डल स्वीकृत च्यानलबाट पठाउनु र पासवर्ड अलग राख्नु सजिलो छ र सुरक्षा कायम राख्छ। निकासी निरीक्षण, PEM चाहिने क्लाइन्ट, वा विशिष्ट आर्टिफ्याक्ट मागेको सहायता मामलाका लागि हो। प्रत्येक निकासीले एउटा तह हटाउँछ र यसको कारण हुनुपर्छ।
सार्वजनिक प्रमाणपत्रहरूमा निजी कुञ्जी हुँदैन, तर तिनमा नाम र संस्थाको विवरण हुन्छ। फाइलको सट्टा टिकटले मागेका फिल्डहरू साझा गर्नुहोस्, जबसम्म फाइल नै मागिएको होइन।