Amazon S3 बाल्टी के लिए SSL कॉन्फ़िगर कैसे करें


142

मैं अपने .NET अनुप्रयोग का उपयोग करके डेटा अपलोड करने और डाउनलोड करने के लिए अमेज़ॅन S3 बाल्टी का उपयोग कर रहा हूं। अब मेरा सवाल है: मैं एसएसएल का उपयोग करके अपने एस 3 बाल्टी का उपयोग करना चाहता हूं। क्या Amazon s3 बाल्टी के लिए SSL लागू करना संभव है?


जवाबों:


151

आप इस तरह से एसएसएल के जरिए अपनी फाइलों तक पहुंच सकते हैं:

https://s3.amazonaws.com/bucket_name/images/logo.gif

यदि आप अपनी बाल्टी के लिए एक कस्टम डोमेन का उपयोग करते हैं, तो आप अपने स्वयं के एसएसएल प्रमाणपत्र के साथ S3 और CloudFront का उपयोग कर सकते हैं (या अमेज़ॅन प्रमाणपत्र प्रबंधक के माध्यम से एक नि: शुल्क एक उत्पन्न करें): http://aws.amazon.com/cloudfront/custom-ssl- डोमेन /


42
यह पूरी तरह सच नहीं है। आप डॉट्स के बिना बाल्टी नामों का उपयोग कर सकते हैं: यह- a-my-awesome-bucket.s3.amazonaws.com अमेज़ॅन के पास वाइल्डकार्ड प्रमाणपत्र है। चूँकि आप डॉट्स का उपयोग नहीं कर सकते हैं, आपके पास अपनी बकेट को इंगित करने वाला CNAME डोमेन नहीं हो सकता है।
डॉक्यूनेक्स्ट

4
अवधि वाले बाल्टी नामों के लिए बाहर देखो! SSL iOS उपकरणों पर काम नहीं करेगा लेकिन Chrome में ठीक काम करेगा। देखें stackoverflow.com/questions/3048236/…
साइमन_वेअर

1
Amazon CloudFront यह आपके लिए करेगी।
ग्रेग

3
डॉट नोटेशन बकेट नाम रखने के लिए (ताकि आप रूट 53 उर्फ ​​का उपयोग कर सकें) और आप ऑब्जेक्ट को REST के माध्यम से PUT करना चाहते हैं, सुनिश्चित करें कि होस्टनाम क्षेत्र से मेल खाता है। उदाहरण के लिए, मेरी बाल्टी है us-west-2तो होस्टनाम वास्तव में है s3-us-west-2.amazonaws.comअन्यथा आपको एक त्रुटि मिलती है।
noetix

1
बिना क्लाउडफ्रंट के क्या हम इसे हासिल कर सकते हैं?
अरुण कुमार

28

कस्टम डोमेन एसएसएल सीरियल्स को आज केवल $ 600 / सर्टिफिकेट / महीने के लिए जोड़ा गया था। नीचे अपने आमंत्रण के लिए साइन अप करें: http://aws.amazon.com/cloudfront/custom-ssl-domains/

अद्यतन : एसएनआई ग्राहक प्रदान किए गए सिरे अब बिना किसी अतिरिक्त शुल्क के उपलब्ध हैं। $ 600 / मो से बहुत सस्ता है, और XP लगभग मार डाला गया है, यह ज्यादातर उपयोग के मामलों के लिए अच्छी तरह से काम करना चाहिए।

@skalee AWS के पास यह पोस्टर हासिल करने के लिए एक तंत्र है, जो "अमेज़ॅन s3 बाल्टी के लिए एसएसएल को लागू करता है", इसे कहा जाता है CloudFront। मैं "कार्यान्वयन" के रूप में पढ़ रहा हूं "मेरे एसएसएल समारोहों का उपयोग करें," नहीं "बस एक एचटीटीपी यूआरएल पर एक एस डालें जो मुझे यकीन है कि ओपी को अधिभूत हो सकता है।

चूंकि CloudFront की लागत S3 ($ 0.12 / GB) के समान है, लेकिन इसमें SSL के आसपास एक अतिरिक्त सुविधा है और आपको बिना किसी अतिरिक्त लागत के अपना SNI प्रमाणपत्र जोड़ने की अनुमति है, यह आपके डोमेन पर "SSL लागू करने" के लिए स्पष्ट निर्धारण है।


64
CloudFront S3 नहीं है।
रात्रि

6
@skalee सही है, लेकिन यदि आप इसे कस्टम SSL सेर्ट्स वाले डोमेन के माध्यम से एक्सेस करना चाहते हैं, तो OP अनुरोधों के अनुसार, आप इस तरह से कस्टम CNAME SSL सेर्ट्स सेट कर सकते हैं और इसे CF के माध्यम से एक्सेस कर सकते हैं।
जोसेफ लस्ट

2
कुछ समय के लिए, मैंने दो CNAMEs सेट किए हैं: static-s3 और static-cf, पहला जो सीधे मेरे S3 की ओर इशारा करता है, दूसरा CF को। पहला एसएसएल का समर्थन नहीं कर सकता, दूसरा कर सकता है, लेकिन यह सीएफ है और एस 3 नहीं है जैसा कि स्केली बताते हैं। मुझे लगता है कि अब हम सबसे अच्छा कर सकते हैं।
खतरे

2
वाह, मुझे लगता है कि वे किसी भी तरह तेजी से सस्ती भंडारण लागत के लिए बनाने के लिए है। कम से कम हालांकि यह पूर्व निर्धारित है। यदि आप केवल एक महीने में 1 घंटे के लिए अपने एसएसएल प्रमाणपत्र का उपयोग करते हैं, तो यह केवल $ 20;;
साइमन_वेवर

1
@ Elegant.Scripting यदि आपके पास एक समर्पित एसएसएल प्रमाणपत्र (एसएनआई प्रमाणपत्र नहीं) है, तो उस मशीन को एक समर्पित आईपी की आवश्यकता होती है जो लागत को पूरा करता है। संभवत: दुनिया भर में हर स्थान के लिए एक समर्पित आईपी आवश्यक है जहां S3 आपके डेटा की मेजबानी कर रहा है। ताकि जुड़ जाए। लेकिन मुझे लगता है कि यह मुख्य रूप से है कि पोस्ट लोगों को इसकी आवश्यकता नहीं है और वे उन लोगों के लिए मूल्य को बढ़ा सकते हैं जो करते हैं। यदि आपको IE6 का समर्थन करने की आवश्यकता नहीं है, तो आपको CloudFront के तहत SNI प्रमाणपत्र के साथ ठीक होना चाहिए।
सिमोन_विवर

11

मैंने पाया कि आप इसे क्लाउड फ़्लेयर सेवा के माध्यम से आसानी से कर सकते हैं।

एक बाल्टी सेट करें, बाल्टी पर वेबहोस्टिंग को सक्षम करें और क्लाउडफ्लेयर के माध्यम से उस समापन बिंदु पर वांछित CNAME को इंगित करें ... और निश्चित रूप से सेवा के लिए भुगतान करें ... लेकिन $ 5- $ 20 VS $ 600 पेट के लिए बहुत आसान है।

पूर्ण विवरण यहाँ: https://www.engaging.io/easy-way-to-configure-ssl-for-amazon-s3-bucket-via-cloudflare/


1
: यहाँ मेरे मार्गदर्शक का प्रयास करें engaging.io/...
राल्फ Vugts

3

यदि आपको वास्तव में इसकी आवश्यकता है, तो पुनर्निर्देशन पर विचार करें।

उदाहरण के लिए, आपसे अनुरोध करने पर assets.my-domain.example.com/path/to/file301 या 302 पर पुनर्निर्देशन किया जा my-bucket-name.s3.amazonaws.com/path/to/fileसकता है s3.amazonaws.com/my-bucket-name/path/to/file(कृपया याद रखें कि पहले मामले my-bucket-nameमें कोई भी डॉट्स नहीं हो सकता है, अन्यथा यह *.s3.amazonaws.com, s3.amazonaws.comS3 प्रमाणपत्र में उल्लेखित नहीं होगा )।

परीक्षण नहीं किया गया, लेकिन मेरा मानना ​​है कि यह काम करेगा। हालाँकि, मुझे बहुत कम गोश्त मिलते हैं।

पहला बहुत स्पष्ट है, इस पुनर्निर्देशन को प्राप्त करने के लिए एक अतिरिक्त अनुरोध। और मुझे संदेह है कि आप अपने डोमेन नाम रजिस्ट्रार द्वारा प्रदान किए गए पुनर्निर्देशन सर्वर का उपयोग कर सकते हैं - आपको किसी भी तरह उचित प्रमाण पत्र अपलोड करना होगा - इसलिए आपको इसके लिए अपने स्वयं के सर्वर का उपयोग करना होगा।

दूसरा यह है कि आप पृष्ठ स्रोत कोड में अपने डोमेन नाम के साथ यूआरएल कर सकते हैं, लेकिन उदाहरण के लिए जब उपयोगकर्ता अलग टैब में तस्वीर खोलता है, तो पता बार लक्ष्य यूआरएल प्रदर्शित करेगा।


2
मैं निश्चित नहीं हूं, लेकिन मुझे लगता है कि इससे कॉर्सेस की समस्या हो सकती है।
xdhmoore

3

यह सीधे S3 के साथ संभव नहीं है, लेकिन आप बाल्टी से क्लाउड फ्रंट वितरण बना सकते हैं। फिर प्रमाण पत्र प्रबंधक पर जाएं और एक प्रमाण पत्र का अनुरोध करें। अमेज़न उन्हें मुफ्त में देता है। आपके द्वारा सफलतापूर्वक प्रमाणीकरण की पुष्टि करने के बाद, आपके क्लाउड फ्रंट वितरण में इसे असाइन करें। Http से https को पुनः निर्देशित करने के लिए नियम सेट करना भी याद रखें।

मैं अपनी निजी वेबसाइट की तरह Amazon S3 पर कुछ स्थिर वेबसाइटों की मेजबानी कर रहा हूं, जिन्हें मैंने SSL प्रमाणपत्र सौंपा है क्योंकि उनके पास क्लाउड फ्रंट वितरण है।


और आपने डोमेन नाम कैसे दिया?
netshark1000

पहले सर्टिफिकेट मैनेजर के पास जाएं और नए सर्टिफिकेट का अनुरोध करें। यदि आवश्यक हो तो अपना डोमेन वहां जोड़ें और उप-डोमेन भी शामिल करें। सबडोमेन को वहां रखने के लिए वास्तव में कुछ भी चोट नहीं पहुंचाता है, इसलिए हो सकता है कि केवल example.com और * .example.com वहां डाल दें।
मिका कुजापेल्टो

0

जैसा कि पहले उल्लेख किया गया है, आप S3 बाल्टियों के लिए नि: शुल्क प्रमाण पत्र नहीं बना सकते हैं। हालाँकि, आप क्लाउड फ्रंट वितरण बना सकते हैं और फिर इसके बजाय क्लाउड फ्रंट के लिए प्रमाणपत्र असाइन कर सकते हैं। आप अपने डोमेन के लिए प्रमाणपत्र का अनुरोध करते हैं और फिर क्लाउड फ्रंट सेटिंग्स में क्लाउड फ्रंट वितरण के लिए इसे असाइन करते हैं। मैंने एसएसएल के माध्यम से स्थिर वेबसाइटों की सेवा के साथ-साथ स्थिर फ़ाइलों की सेवा के लिए इस पद्धति का उपयोग किया है।

स्थैतिक वेबसाइट निर्माण के लिए अमेज़न जगह पर जाना है। एसएसएल के साथ एक स्थिर वेबसाइट प्राप्त करना वास्तव में सस्ती है।


2
Google का उपयोग करने वाले प्रत्येक व्यक्ति के लिए: N. वर्जीनिया क्षेत्र में अपना AWS प्रमाणपत्र (भी) बनाना याद रखें। अन्यथा आप इसे अपने CF वितरण
KLoozen
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.