मैं nginx में एक सुरक्षित कनेक्शन (https) स्थापित करने का प्रयास कर रहा हूं।
लेकिन मैं निजी कुंजी की अनुमतियों के बारे में थोड़ा चिंतित हूं, जिनका किसी भी ट्यूटोरियल में उल्लेख नहीं किया गया है।
क्या मुझे उन्हें बदलना चाहिए? किसका?
मैं nginx में एक सुरक्षित कनेक्शन (https) स्थापित करने का प्रयास कर रहा हूं।
लेकिन मैं निजी कुंजी की अनुमतियों के बारे में थोड़ा चिंतित हूं, जिनका किसी भी ट्यूटोरियल में उल्लेख नहीं किया गया है।
क्या मुझे उन्हें बदलना चाहिए? किसका?
जवाबों:
निजी चाबियों को भारी प्रतिबंधित होना चाहिए। काम करने 600
और स्वामित्व के लिए अनुमतियाँ सेट करना root
चाहिए। हालांकि, अन्य सुरक्षित अनुमतियाँ सेटिंग्स हैं - मालिक root
और समूह ssl-cert
और अनुमतियों के साथ एक निर्देशिका में उबंटू स्टोर कुंजी 710
। इसका मतलब यह है कि ssl-cert
उस निर्देशिका में केवल सदस्य ही किसी भी फाइल को एक्सेस कर सकते हैं। निजी कुंजियाँ तब समूह ssl-cert
, स्वामी root
और अनुमतियाँ होती हैं 640
।
मेरे पास nginx सेटअप होने का एक मुद्दा था और इस सवाल पर आया था। यहाँ दूसरे उत्तर ने पहले ही सीधे सवाल का जवाब दे दिया है लेकिन मुझे लगा कि थोड़ी और जानकारी मददगार साबित होगी।
आमतौर पर, nginx root
init स्क्रिप्ट / सिस्टमड द्वारा उपयोगकर्ता के रूप में शुरू किया जाता है । हालांकि, नंगेक्स में सामान्य ऑपरेशन के लिए कम विशेषाधिकार प्राप्त उपयोगकर्ता को स्विच करने की क्षमता भी है। तो मेरा प्रश्न यह था कि ssl प्रमाणपत्र / कुंजी लोड करने के लिए किस उपयोगकर्ता का उपयोग किया जाता है? प्रारंभिक विशेषाधिकार प्राप्त उपयोगकर्ता या वह जो स्विच किया जाता है?
सौभाग्य से, nginx उपयोगकर्ताओं को स्विच करने से पहले प्रमाणपत्र और कुंजी को मेमोरी में पढ़ने के लिए प्रारंभिक अनुमतियों का उपयोग करता है। तो, आम तौर पर, आप वास्तव में बहुत प्रतिबंधित अनुमतियों के साथ चाबियाँ छोड़ सकते हैं क्योंकि वे अभी तक के रूप में चल रहे हैं जब वे nginx द्वारा लोड किए जाते हैं root
।
जिस समस्या में मैं भाग रहा था, वह मुझे यहाँ उतारा गया था कि मैं ssl_certificate
अपने server
ब्लॉकों में ही परिभाषित कर रहा था nginx.conf
। मुझे इस तरह की त्रुटियां हो रही थीं [error] 18606#18606: *311 no "ssl_certificate" is defined in server listening on SSL port while SSL handshaking
जब मैं जानता था कि अच्छी और अच्छी तरह से पता है कि मेरी चाबियाँ सही जगह पर थीं। यह मुद्दा यह था कि मेरे पास ssl_certificate
इसके http
स्तर पर नहीं था nginx.conf
।
आशा है कि यह किसी के लिए उपयोगी है।
nginx
समूह में उन लोगों द्वारा प्रमाण पत्र या निजी कुंजी पढ़ने योग्य बनाने के लिए आवश्यक नहीं है । वेबसर्वर उनका उपयोग तब भी कर सकेंगे, जब वे केवल पढ़ने योग्य होंroot
(जैसा कि उन्हें होना चाहिए)।