SSH कुंजियाँ (शेल सिक्योर) SSH प्रोटोकॉल के भीतर सत्र को प्रमाणित करने और स्थानीय मशीन और SSH सर्वर के बीच कनेक्शन स्थापित करने के लिए उपयोग की जाती हैं। सामान्य प्रवाह में, इस सर्वर को स्थापित करने का सबसे अच्छा तरीका सार्वजनिक कुंजी का उपयोग करना है, एक बार सर्वर कनेक्शन स्थापित हो जाने पर SSH प्रत्येक लॉगिन पर पासवर्ड की आवश्यकता को समाप्त कर देता है और उस सर्वर के साथ स्वचालित रूप से कनेक्शन स्थापित करता है।
हालांकि, सार्वजनिक कुंजी का उपयोग करते समय कभी-कभी SSH क्लाइंट का कनेक्शन अनुरोध सर्वर द्वारा अस्वीकार कर दिया जाता है जिससे SSH permission denied त्रुटि हो सकती है।
यह लेख "SSH Permission denied" त्रुटि को ठीक करने के लिए विभिन्न समाधानों को प्रदर्शित करेगा, लेकिन उससे पहले, आइए इस त्रुटि के कारण पर एक नज़र डालें।
इस त्रुटि के होने के कुछ कारण हो सकते हैं। सबसे आम कारणों में से एक यह है कि SSH सर्वर पर पासवर्ड प्रमाणीकरण अक्षम है।
इस त्रुटि का एक और आम कारण "ssh" फ़ोल्डर तक पहुंच न होना है जिसका अनिवार्य रूप से मतलब है कि Authorized_keys तक पहुंच अक्षम है।
समाधान 1: SSH सर्वर पर पासवर्ड प्रमाणीकरण अनुमति दें
जैसा कि ऊपर उल्लेख किया गया है, यदि सर्वर ने पासवर्ड प्रमाणीकरण के साथ SSH कनेक्शन सक्षम नहीं किया है, तो कनेक्शन के परिणामस्वरूप विफलता होने की संभावना है।
- इससे बचने के लिए, SSH सर्वर पर जाएं, और उस PC \ सर्वर से, निम्न कमांड का उपयोग करके कॉन्फ़िगरेशन फ़ाइल खोलें:
sudo nano /etc/ssh/sshd_config
यह कॉन्फ़िगरेशन कमांड टर्मिनल में खुलेगा:
SSH कॉन्फ़िगरेशन फ़ाइल - इस कॉन्फ़िगरेशन फ़ाइल में, "Password Authentication" लाइन ढूंढें, और ट्रेलिंग "#" प्रतीक को हटाकर लाइन को "अनकमेंट" करें: PasswordAuthentication ढूंढें PasswordAuthentication सक्रिय करें
- एक बार हो जाने पर, "CTRL + O" और फिर "CTRL + X" दबाकर कॉन्फ़िगरेशन फ़ाइल से सेव करें और बाहर निकलें। उसके बाद, अगला चरण SSH की सेवा को पुनरारंभ करना है इसके लिए निम्न कमांड का उपयोग करें:
sudo systemctl restart sshd
SSH सेवा पुनरारंभ करना - एक बार हो जाने पर, फिर से क्लाइंट से SSH सर्वर से कनेक्ट करें ताकि निम्न परिणाम प्राप्त हों: SSH सर्वर कनेक्टेड
आपने सफलतापूर्वक त्रुटि हल कर ली है और SSH सर्वर से कनेक्ट हो गए हैं।
समाधान 2: सार्वजनिक कुंजी प्रमाणीकरण सक्षम करें
कभी-कभी, उपयोगकर्ताओं को त्रुटि का एक परिवर्तन \ भिन्नता मिल सकती है जिसमें त्रुटि स्थिति "SSH Permission Denied (public key)" बन जाती है यह त्रुटि SSH सर्वर पर सार्वजनिक प्रमाणीकरण सक्षम न होने के कारण होती है।
- ऐसे मामलों के लिए, SSH सर्वर PC पर जाएं, और निम्न कमांड का उपयोग करके कॉन्फ़िगरेशन फ़ाइल खोलें:
sudo nano /etc/ssh/sshd_config
कॉन्फ़िगरेशन फ़ाइल में, बस रूट लॉगिन अक्षम करें और "PublicKeyAuthentication" सक्षम करें:
RootLogin और PubkeyAuthentication कॉन्फ़िगर करें - उसके बाद, सुनिश्चित करें कि UsePAM विकल्प भी कॉन्फ़िगरेशन फ़ाइल में सक्षम हैं: UsePAM कॉन्फ़िगरेशन सक्षम करें
- फिर से, "CTRL + O" और फिर "CTRL + X" का उपयोग करके फ़ाइल से सेव करें और बाहर निकलें और फिर SSH की सेवा को पुनरारंभ करने के लिए कमांड का उपयोग करें:
sudo nano /etc/ssh/sshd_config
- एक बार हो जाने पर, कनेक्शन को पुनः प्रयास करें ताकि निम्न परिणाम प्राप्त हों:
सफल SSH सर्वर कनेक्शन
आपने SSH Permission Denied (Public Key) त्रुटि हल कर ली है।
समाधान 3: SSH डायरेक्टरी को अनुमति दें
अक्सर, सार्वजनिक कुंजी "ssh" डायरेक्टरी के अंदर authorized_keys सबडायरेक्टरी में संग्रहीत होती है और यदि इस सब-डायरेक्टरी या पूरी डायरेक्टरी की अनुमतियां सही नहीं हैं, तो SSH कनेक्शन अंततः त्रुटि लौटाएगा।
- ऐसे मामलों में, बस "authorized_keys" डायरेक्टरी की अनुमति निम्न कमांड का उपयोग करके बदलें:
sudo chmod 600 ~/.ssh/authorized_keys
यह कमांड authorized_keys के लिए पढ़ने और लिखने की अनुमति सक्षम करेगा। - उसके बाद मूल डायरेक्टरी को निष्पादन अनुमति दें कमांड का उपयोग करके:
sudo chmod 700 ~/.ssh
इन कमांड को चलाने के बाद, SSH सर्वर के साथ SSH कनेक्शन का प्रयास करें ताकि निम्न परिणाम प्राप्त हों:
SSH सर्वर से कनेक्टेड
आउटपोस्ट दर्शाता है कि त्रुटि हल हो गई है
SSH permission denied के लिए बोनस फिक्स
त्रुटि "Permission Denied" तब हो सकती है जब SSH सर्वर का पासवर्ड सही नहीं है। एक टाइपो मुख्य रूप से इसका कारण बनता है, या कभी-कभी सर्वर ने पासवर्ड बदल दिया है, और क्लाइंट इससे अनजान है। ऐसे मामलों में, जब उपयोगकर्ता SSH कनेक्शन के लिए पासवर्ड प्रदान करता है, तो टर्मिनल पर निम्न त्रुटि प्रदर्शित होती है:
पासवर्ड पुनः प्रयास करें "गलत पासवर्ड दर्ज किया गया"
ऐसे मामलों में, SSH सर्वर सपोर्ट से संपर्क करें और पूछें कि क्या उन्होंने पासवर्ड बदल दिया है या बस दोबारा जांचें कि क्या आपने टाइपो किया है या नहीं। उसके बाद, आप गलती का पता लगा पाएंगे और SSH सर्वर से कनेक्ट हो पाएंगे:
SSH सर्वर चल रहा है
SSH Permission Denied कोई नया नहीं है और मुख्य रूप से पासवर्ड प्रमाणीकरण सक्षम न होने, सार्वजनिक कुंजी प्रमाणीकरण सक्षम न होने, और "ssh" या "authroized_keys" डायरेक्टरी पर गलत अनुमतियों के कारण होता है। इस गाइड ने उन समाधानों को विस्तृत किया है जिनका उपयोग त्रुटि को ठीक करने और कनेक्शन के साथ आगे बढ़ने के लिए किया जा सकता है। इसके अलावा, यह त्रुटि SSH सर्वर द्वारा पासवर्ड में बदलाव, या टाइपो के कारण भी हो सकती है। इस मामले में, SSH सर्वर के सपोर्ट से संपर्क करना या यह सुनिश्चित करते हुए पासवर्ड को पुनः टाइप करना सबसे अच्छा है कि कोई टाइपो नहीं है।
लेखक के बारे में

मुहम्मद जुब्यान
मुहम्मद जुब्यान एक प्रमाणित Google IT सपोर्ट प्रोफेशनल हैं जिनके पास 7 वर्षों से अधिक का व्यापक अनुभव है। उन्होंने 1500 से अधिक कंप्यूटर्स पर काम किया है, जिससे उन्हें विंडोज-संबंधी मुद्दों और त्रुटियों के किसी भी जटिल मूल कारण का पता लगाने और समस्या निवारण करने में सक्षम बनाने वाली मूल्यवान अंतर्दृष्टि प्राप्त हुई है। Appuals को सीनियर एडिटर के रूप में प्रबंधित करने के अलावा, वह वर्तमान में अपना खुद का गेम ऑप्टिमाइज़ेशन प्रोग्राम विकसित कर रहे हैं जो गेमर्स और आकस्मिक उपयोगकर्ताओं दोनों को पूरा करता है।