पृष्ठभूमि: मुझे एक वेब सेवा के साथ परेशानी हो रही है कोल्ड फ्यूजन 9 (सहकर्मी प्रमाणित नहीं है)। सबसे पहले, मैं कोशिश करूँगा अगर वह काम नहीं कर रहा है, तो मैं कोशिश कर रहा हूं। लेकिन मेरे प्रश्न अधिक विशिष्ट हैं ... प्रश्न: मैं क्रोम (या लिनक्स सीएलआई) में प्रमाणपत्र (सही स्तर पर) कैसे निर्यात कर सकता हूं, और किस प्रारूप में? विवरण मैंने ब्राउज़र से एक प्रमाणन निर्यात करने के लिए कुछ निर्देश देखे हैं, लेकिन वे IE (पुराने संस्करण, उस पर) के लिए हैं, और मैं क्रोम का उपयोग करना पसंद करता हूं, क्योंकि मैं लिनक्स पर हूं। वहां से, मैं चार स्तरों में से एक पर निर्यात करने में सक्षम हूं: कौन सा उपयुक्त है? इसके अलावा, "प्रमाण पत्र को विशिष्ट रूप से X.50 9 प्रमाणपत्र होना चाहिए एन्कोडिंग रूल्स (डीईआर) प्रारूप। ", और क्रोम के निर्यात डायलॉग इन विकल्पों की पेशकश करता है: मुझे लगता है "डीईआर-एन्कोडेड बाइनरी, एकल प्रमाणपत्र" उचित है? निम्नलिखित एक प्रमाण पत्र जेनरेट कर रहा है जिसे मैं कुंजी टोल का उपयोग करके आयात कर पा रहा था: भावी पीढ़ी के लिए, यहां आयात करने के लिए उपयोग की जाने वाली कमान थी: इन दिनों कर रहे हैं (एक आवेश प्रावधान में)। इस स्क्रिप्ट में, कीस्टोर हार्ड-कोडेड है, क्योंकि मैं इसे केवल लुसे के लिए प्रयोग कर रहा हूं, इस समय; हालांकि, जिस पथ को मुख्यतः आसानी से पैरामीटेट किया जा सकता है इसके अलावा, उपरोक्त समाधान से वास्तव में यह अंतर करता है कि यह
एक ब्राउजर के साथ
sudo keytool -import -keystore / opt / Jrun4 / jre / lib / security / cacerts -alias "sb1.geolearning.com (Thawte एसएसएल सीए) "-स्टोरेपास चेंटीट -नॉपमार्प्ट -ट्रस्टकैक्ट -फ़ाइल ~ / डाउनलोड / एसबी 1.एजोलैर्निंग.कॉम <एचआर>
ब्राउज़र के बिना
runfile संबंधित कोड बस इतने उग्र है कि स्क्रिप्ट को एक से अधिक बार नहीं चलाया जाता है; उन पंक्तियों की ज़रूरत से ज़्यादा ज़रूरत नहीं है यदि आप कोड को वग्रेंट प्रावधान के रूप में उपयोग नहीं कर रहे हैं।
openssl s_client (और इसे
sed से साफ़ करता है) इसके बजाय ब्राउज़र के माध्यम से मैन्युअल रूप से ऐसा करने से।
#! / Usr / bin / env bash set -e description = " लुसे की कीस्टोर को प्रमाणित करें। " जबकि: $ 1 में प्रोजेक्ट-डीआईआर = *) प्रावधान_आकार = $ {1 # * =} # "" = "बदलाव तक सबकुछ हटाना ;; --runfile-name = *) runfile_name = $ {1 # * =} # "=" शिफ्ट तक सब कुछ हटाना ;; --साइट-होस्ट-नाम = *) site_host_name = $ {1 # * =} # "=" शिफ्ट तक सब कुछ हटाना ;; - *) गूंज "चेतावनी: अज्ञात विकल्प (उपेक्षित): $ 1" & gt; और 2 बदलाव ;; *) # और अधिक विकल्प नहीं। लूप ब्रेक के दौरान बंद करो ;; Esac किया runfile = "$ {provisioned_dir} / $ {runfile_name}" अगर [-f "$ {रनफाइल}"]; फिर "$ {description} एको": पहले से ही चल रहे हैं। " बाहर निकलें 0f ईको "कुंजीस्टोर में प्रमाण जोड़ें" echo -n | \ Openssl s_client-connect $ {site_host_name}: 443 \ | Sed -ne '/ -जैग सर्टिफिकेट - /, / - एंड सर्टिफिकेट- / पी' \ & gt; /tmp/${site_host_name }.cert / opt / lucee / jdk / jre / bin / keytool \ -import \ -keystore / opt / lucee / lib / lucee-server / context / security / cacerts \ -alias "$ {site_host_name} } (स्व-हस्ताक्षरित) "\ -storepass changeit \ -file /tmp/${site_host_name}.cert \ -noprompt \ || सच स्पर्श "$ {runfile}"
No comments:
Post a Comment