नई एडब्ल्यूएस प्रमाणपत्र प्रबंधक सेवा की सहायता से AWS EC2 में SSL प्रमाणपत्र कैसे जोड़ें


91

AWS एक नई सेवा AWS प्रमाणपत्र प्रबंधक के साथ आई है । एक बात जो मुझे वर्णन से मिली वह यह है कि यदि हम इस सेवा का उपयोग कर रहे हैं तो हमें प्रमाणपत्र के लिए भुगतान नहीं करना होगा।

वे इलास्टिक लोड बैलेंसर (ईएलबी) और क्लाउडफ्रंट के लिए प्रमाण पत्र प्रदान कर रहे हैं, लेकिन मुझे ईसी 2 कहीं भी नहीं मिला।

क्या ईसी 2 के साथ प्रमाण पत्र का उपयोग करने का कोई तरीका है?


1
आप मुफ्त और भरोसेमंद प्रमाणपत्रों के लिए letencrypt.org पर एक नज़र डाल सकते हैं , क्रोम और फ़ेसबुक जैसे योगदानकर्ताओं के साथ यह बहुत अच्छा लगता है
टॉम


1
ओउ मैं इस बारे में नहीं जानता था। हालांकि मुझे लगता है कि वे इसे अनुमति नहीं देने के लिए सही हैं। क्या आप इसके बजाय किसी अन्य डोमेन (उदाहरण के लिए रूट 53 के माध्यम से) पर उपनाम बना सकते हैं और प्रदान किए गए डिफ़ॉल्ट ans dns नाम का उपयोग नहीं कर सकते हैं?
टॉम

मेरे पास अभी हाल ही में एक वीडियो [अप्रैल - 2020] आया है, जहां उन्होंने AWS सर्टिफिकेट मैनेजर के साथ एक SSL \ TLS सर्टिफिकेट बनाया है और फिर उसे लोड बैलेंसर के पीछे EC2 इंस्टेंस पर रखा है। youtu.be/bWPTq8z1vFY यह वास्तव में मददगार था।
nktsamba

जवाबों:


109

प्रश्न: क्या मैं अमेज़ॅन ईसी 2 इंस्टेंस या अपने स्वयं के सर्वर पर प्रमाण पत्र का उपयोग कर सकता हूं?

नहीं, इस समय, ACM द्वारा प्रदान किए गए प्रमाणपत्र केवल विशिष्ट AWS सेवाओं के साथ उपयोग किए जा सकते हैं।


प्रश्न: एसीएम द्वारा प्रदान किए गए प्रमाणपत्रों का उपयोग मैं किन AWS सेवाओं के साथ कर सकता हूं?

आप निम्नलिखित AWS सेवाओं के साथ ACM का उपयोग कर सकते हैं:

• इलास्टिक लोड संतुलन

• Amazon CloudFront

• एडब्ल्यूएस इलास्टिक बीनस्टॉक

• अमेज़ॅन एपीआई गेटवे

https://aws.amazon.com/certificate-manager/faqs/

आप अमेज़ॅन सर्टिफिकेट मैनेजर (एसीएम) द्वारा बनाए गए प्रमाणपत्रों को उन संसाधनों पर स्थापित नहीं कर सकते हैं जिनके पास आपके पास निम्न स्तर की पहुंच है, जैसे EC2 या AWS के बाहर सर्वर, क्योंकि आपको निजी कुंजी तक पहुंच प्रदान नहीं की गई है। इन समारोहों को केवल AWS अवसंरचना - ELB और CloudFront द्वारा प्रबंधित संसाधनों पर तैनात किया जा सकता है - क्योंकि AWS अधोसंरचना उन प्रमाणपत्रों के लिए निजी कुंजी की एकमात्र प्रतियाँ रखती है जो इसे उत्पन्न करती है, और उन्हें श्रव्य आंतरिक नियंत्रण के साथ कड़ी सुरक्षा के तहत बनाए रखती है। ।

EC2 से आने वाली सामग्री के लिए इन समारोहों का उपयोग करने के लिए आपको अपने EC2 मशीनों को CloudFront या ELB (या दोनों, कैस्केड, भी काम करेगा) के पीछे सुनना होगा ... क्योंकि आप सीधे EC2 मशीनों पर इन सिरे को स्थापित नहीं कर सकते हैं ।


11
अच्छी खबर यह है कि यदि आपने कोई प्रमाण पत्र जारी किया है तो कोई शुल्क नहीं है और बस यहीं पता चला है कि आप इसे स्थापित नहीं कर सकते।
क्राफ्टीदेविल

1
lol @kraftydevil मुझे लगता है कि आपके पास एक बिंदु है। ध्यान दें कि allowencrypt.org मुफ्त एसएसएल सीट्स के लिए एक वैध, मान्यताप्राप्त, गैर-लाभकारी स्रोत है जिसे आप कहीं भी स्थापित कर सकते हैं। (और, मैं जोड़ सकता हूं, मुझे एनक्रिप्ट के साथ कोई संबद्धता नहीं है।)
माइकल - sqlbot

6
@EngineerDollery नहीं, केवल एक विशिष्ट मामले के लिए ही सही है। आप EC2 पर लेट्स एनक्रिप्ट को ले सकते हैं। आप जो नहीं कर सकते हैं वह EC2 *.amazonaws.comहोस्टनाम के लिए लेट्स एनक्रिप्ट क्रिप्ट प्राप्त कर सकता है क्योंकि, काफी समझदारी से, आइए एनक्रिप्ट पॉलिसी को अनुमति नहीं देता है ... लेकिन एक डोमेन के लिए जो आपको EC2 इंस्टेंस IP, या ELB, या CloudFront को इंगित करता है। आप निश्चित रूप से लेट्स एनक्रिप्ट का उपयोग कर सकते हैं, वही कहीं और भी।
माइकल - साइक्लोबोट

2
उदाहरण के लिए एक लिंक को EC2 पर तैनात एन्क्रिप्टेड सर्टिफिकेट के साथ लिंक करें: docs.aws.amazon.com/AWSEC2/latest/UserGuide/…
Efren

मैंने ELB सेटअप के साथ सब कुछ किया और अब मैं 502 बैड गेटवे प्राप्त कर रहा हूं जब मैंने ELB
MuaathAli

2

नहीं, आप EC2 पर सेरेट्स को तैनात करने के लिए a प्रमाणपत्र प्रमाणपत्र प्रबंधक का उपयोग नहीं कर सकते। सर्टिफिकेट मैनेजर सेर्ट्स केवल क्लाउडफ्रंट और इलास्टिक लोड बैलेंसर के खिलाफ तैनात किए जा सकते हैं। Ec2 पर इसका उपयोग करने के लिए, आपको ec2 के शीर्ष पर एल्ब लगाने की जरूरत है, ताकि क्लाइंट से लोड बैलेंसर के लिए अनुरोध को https संरक्षित किया जाएगा और elb से ec2 वेबसर्वर पर http होगा।


1

यदि आप आंतरिक उद्देश्य के लिए केवल एडब्ल्यूएस एसीएम सर्टिफिकेट का उपयोग कर रहे हैं, तो आप शायद एडब्ल्यूएस एसीएम प्राइवेट सीए का उपयोग सेर्ट्स जारी करने के लिए कर सकते हैं। (मुझे लगता है कि आप इसे सार्वजनिक / बाहरी ट्रैफिक उद्देश्य के लिए उपयोग कर सकते हैं और साथ ही यदि आपका सीए सीए सार्वजनिक रूप से भरोसेमंद सीए है)।

https://docs.aws.amazon.com/acm-pca/latest/userguide/PcaGetStarted.html

एप्लिकेशन / ईसी 2 / कंटेनर स्टार्टअप के दौरान, अपने गंतव्य के लिए अपने एसीएम प्राइवेट सीए द्वारा जारी किए गए प्रमाणपत्र / निजी कुंजी को निर्यात करने के लिए एक कदम सेट करें और ट्रैफ़िक की सेवा के लिए इसका उल्लेख करना शुरू करें।

https://docs.aws.amazon.com/cli/latest/reference/acm/export-certificate.html

एक अच्छी बात यह है कि, आप यह नियंत्रित कर सकते हैं कि कौन IAM भूमिका का उपयोग करके निर्यात प्रमाणपत्र सुविधा को कॉल कर सकता है ताकि सभी लोग प्रमाणपत्र की निजी कुंजी डाउनलोड न कर सकें।

इसके साथ एक नकारात्मक पहलू यह है कि निजी CA महंगी AWS सेवा ($ 400 / महीना) है। https://aws.amazon.com/certificate-manager/pricing/


आप ACM PCA के साथ निर्यात-प्रमाणपत्र का उपयोग नहीं कर सकते हैं - लेकिन आपको इसकी आवश्यकता नहीं है: आपके पास पहले से ही निजी कुंजी होगी, और गेट-सर्टिफिकेट प्रमाणपत्र और श्रृंखला प्रदान करता है।
नि: शुल्क विल्ट

@ फ्रीविल मुझे पूरा यकीन है, आपको गेट-सर्टिफिकेट के साथ प्राइवेट की पार्ट नहीं मिलेगा। इस CLI प्रलेखन की जाँच करें । और यह । क्ली प्रतिक्रियाओं के दोनों आउटपुट की जाँच करें। मैंने पहले ही इन सीएलआई कमांड्स का परीक्षण किया है।
इमरान

@FreeWillaert हां :)। CLI कमांड के ऊपर Docker स्टार्टअप स्क्रिप्ट या EC2 उपयोगकर्ता डेटा स्क्रिप्ट का उपयोग रनटाइम में निजी कुंजी प्रमाणपत्र डाउनलोड करने और TLS ट्रैफ़िक की सेवा के लिए उनका उपयोग शुरू करने के लिए किया जा सकता है। विशेष रूप से एएसजी में। अच्छी बात यह है कि आप यह नियंत्रित कर सकते हैं कि कौन IAM भूमिकाओं का उपयोग करके CLI कमांड के ऊपर कॉल कर सकता है, इसलिए सभी के पास निजी कुंजी तक पहुंच नहीं है।
इमरान

1
@ इमरान आपको One downside with this is, private CA is expensive AWS service($400/month).शीर्ष पर बोल्ड लिखना चाहिए उदाहरण के लिए मैं इसे याद करूंगा अगर मैंने यह उत्तर दूसरी बार नहीं पढ़ा है
पीकरस्की डी

@PiekarskiD ने किया। सलाह के लिये धन्यवाद!!। अगर आपको मेरा जवाब पसंद है, तो आप हमेशा उत्थान कर सकते हैं !!
इमरान

0

उपरोक्त टिप्पणियों में जोड़ते हुए, आप इसके लिए AWS प्रमाणपत्र प्रबंधक का उपयोग नहीं कर सकते हैं, लेकिन आप IIS चला रहे Windows सर्वर पर ec2 में लेट्स एनक्रिप्ट प्रमाण पत्र जोड़ सकते हैं और यह बहुत आसान है:

  1. अपने Ec2 उदाहरण के साथ एक लोचदार आईपी को संबद्ध करें।

  2. सुनिश्चित करें कि आपके पास एक पंजीकृत डोमेन है। आप ec2----------.us-east-1.compute.amazonaws.com प्रकारों का उपयोग नहीं कर सकते हैं जो आपके उदाहरण के साथ आते हैं।

  3. आपके डोमेन प्रदाता की DNS सेटिंग्स के माध्यम से आपके इलास्टिक IP पर आपका डोमेन बिंदु होता है।

  4. अपने ec2 उदाहरण से कनेक्ट करें और साइट बाइंडिंग में अपना डोमेन नाम जोड़ें।

  5. Https://github.com/PKISharp/win-acme/releases पर जाएं

  6. परिसंपत्तियों के तहत देखें, और नवीनतम संस्करण का उपयोग करें (उदाहरण के लिए जीत-acme.v2.0.10.444.zip)। यह एकमात्र संपत्ति फ़ोल्डर है जिसकी आपको आवश्यकता है।

  7. फ़ोल्डर को अनज़िप करें, टर्मिनल को व्यवस्थापक के रूप में खोलें, और अनज़िप्ड फ़ोल्डर में सीडी।

  8. Wacs.exe चलाएँ और संकेतों का पालन करें।

  9. सुनिश्चित करें कि आपके उदाहरण के लिए दिया गया सुरक्षा समूह ट्रैफ़िक की अनुमति देता है (बहुत कम से कम आपके अपने IP पर) आपके द्वारा IIS में चुने गए HTTPS पोर्ट के माध्यम से; यह डिफ़ॉल्ट रूप से पोर्ट 443 है।

जब मुझे यह पता चल रहा था तो मुझे नीचे दिए गए लिंक मददगार लगे। यदि आपको अधिक सहायता की आवश्यकता है, तो यहां पहले रिलीज़ का उपयोग करके एक वीडियो है, लेकिन यह एक ही विचार है।

https://www.youtube.com/watch?v=fq5OUOjumuM

इसके अलावा यह लेख सहायक हो सकता है:

https://weblog.west-wind.com/posts/2016/feb/22/using-lets-encrypt-with-iis-on-windows

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.