SSH: "अनुमतियाँ 0644 'my_key.pub' के लिए बहुत खुली हैं।"


21

क्यों है 0644यानी -rw-r--r--भी एक SSH कुंजी के लिए खोलने के? इसके अलावा, मैं .sshनिर्देशिका ( 0700) या होम निर्देशिका ( 0731) पर कोई झूठी अनुमति नहीं पा सका ।

Btw मुझे यह त्रुटि तब आ रही है जब किसी कुंजी के माध्यम से परिक्षण का परीक्षण कर रहा हूँ ssh-keygen -y -f my_key.pub

सादर

जवाबों:


7

आप गलत फ़ाइल पर ssh-keygen चला रहे होंगे। ssh-keygen -yएक निजी कुंजी फ़ाइल पर काम करता है। ".pub" फ़ाइलों में आम तौर पर सार्वजनिक कुंजी होती है। आपके पास संभवतः नाम है my_key, बिना किसी एक्सटेंशन के, और यह 0600 मोड पर होना चाहिए। यह वह फाइल है जिसमें निजी कुंजी होनी चाहिए।

आपके प्रश्न का सीधे उत्तर देने के लिए, SSH कुंजियों का उपयोग आम तौर पर पासवर्ड के बिना दूरस्थ सर्वर से कनेक्ट करने के लिए किया जाता है। निजी कुंजी का कब्ज़ा किसी को आपके खाते में किसी भी सिस्टम पर लॉग इन करने की अनुमति देता है जो कुंजी को स्वीकार करता है। ssh-keygen और अन्य ssh उपयोगिताओं के लिए निजी कुंजी फ़ाइलों को प्रतिबंधित अनुमतियों की आवश्यकता होती है क्योंकि फाइलें संवेदनशील होती हैं और उन्हें सुरक्षित रहने की आवश्यकता होती है।


11

0644 सार्वजनिक कुंजी के लिए बहुत अधिक खुला नहीं होना चाहिए, लेकिन आपकी निजी कुंजी के लिए भी खुला होना चाहिए।

आपकी निजी कुंजी की अनुमति होनी चाहिए 0600जबकि आपकी सार्वजनिक कुंजी की अनुमति हो 0644

वैसे, आपको .sshफ़ोल्डर पर अनुमति का भी ध्यान रखना चाहिए । इसकी अनुमति होनी चाहिए 0700, ताकि केवल आप, स्वामी, फ़ोल्डर पर नियंत्रण हो।

अपने घर की निर्देशिका के अनुसार, लिखने की अनुमति समूह और अन्य को नहीं दी जानी चाहिए।

रन उसे chmod go-w /home/usernameठीक करना चाहिए।


बिल्कुल इन निर्देशों का पालन न करें। यह वह नहीं है जो आपको करना चाहिए। यह सभी होम निर्देशिका अनुमतियों को भी रीसेट कर देगा। आपको केवल .sshफ़ोल्डर और id_rsaफ़ाइल को ही संशोधित करना चाहिए , न कि आपकी संपूर्ण होम निर्देशिका को!
निफ्टीलेट्स

9

केवल आपको चलाने की आवश्यकता है chmod 600 ~/.ssh/id_rsa। बस।

यह फ़ाइल पर अनुमतियों को बदलता है ताकि मालिक (आप) इसे पढ़ और लिख सकें, जो आपको प्राप्त त्रुटि संदेश को हटा देगा।


अपडेट किया गया @TwistyImpersonator
niftylettuce

0

जवाब ऊपर मान्य हैं, लेकिन किसी भी चलाने से पहले chmodठीक अनुमतियों के लिए, बस सुनिश्चित करें कि आपके IdentityFileमें (रों) ~/.ssh/configअपनी निजी कुंजी का उल्लेख है। नोविस गलत समझ सकते हैं और .pubइसके बजाय सार्वजनिक कुंजी ( विस्तार के साथ ) का संदर्भ ले सकते हैं , इस प्रकार उसी त्रुटि के लिए अग्रणी (चूंकि सार्वजनिक कुंजी फ़ाइल अनुमतियाँ निजी कुंजी के लिए बहुत खुली हैं)।

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