अनुमति ssh कनेक्शन के लिए रूट @ localhost के लिए अस्वीकृत


28

मैंने अभी Ubuntu 14.04 और LAMP स्थापित किया है। फिर, मैं अपने सर्वर को कॉन्फ़िगर करना चाहता था, इसलिए इस ट्यूटोरियल की कोशिश की ।

जब मैं आज्ञा देता हूं:

ssh root@localhost

मुझे मिल गया: अनुमति से इनकार कर दिया गया, कृपया पुनः प्रयास करें। मैंने कमांड के माध्यम से रूट यूजर के रूप में लॉग इन किया है:

sudo -i

मैंने भी कोशिश की, के माध्यम से लॉग इन करके:

sudo -s

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

क्या कोई मेरी मदद कर सकता है?

पुनश्च: मैंने इस प्रश्न पर गौर किया लेकिन मेरे लिए काम नहीं किया।

जवाबों:


57

डिफ़ॉल्ट रूप से, SSH सर्वर रूट के लिए पासवर्ड-आधारित लॉगिन से इनकार करता है। में /etc/ssh/sshd_config, बदलें:

PermitRootLogin without-password

सेवा मेरे

PermitRootLogin yes

और SSH को पुनः आरंभ करें:

sudo service ssh restart

या, आप SSH कुंजियों का उपयोग कर सकते हैं। यदि आपके पास एक नहीं है, तो एक का उपयोग करके बनाएं ssh-keygen(कुंजी के लिए डिफ़ॉल्ट पर छड़ी करें, और यदि आपको ऐसा लगता है तो पासवर्ड को छोड़ दें)। फिर क्या करें sudo -s(या रूट बनने की आपकी पसंदीदा विधि), और इसमें SSH कुंजी जोड़ें /root/.ssh/authorized_keys:

cat /home/user/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys

मुझे यह त्रुटि मिलती है: cat: /home/user/.ssh/id_rsa.pub: ऐसी कोई फ़ाइल या निर्देशिका नहीं है।
vnay92

आह। माफ़ कीजिये। मैंने मान लिया कि आपके पास SSH कुंजी है। अपने उपयोगकर्ता के रूप में, करें ssh-keygen(यदि आप चाहें तो SSH कुंजी के लिए एक पासवर्ड छोड़ें, और बाकी के लिए डिफॉल्ट से चिपके रहें)। साथ ही, मुझे आशा है कि आपने userअपने वास्तविक उपयोगकर्ता नाम से बदल दिया है ।
मूरू

दोनों विधियाँ मेरे लिए कारगर नहीं रहीं! मैंने अपना होम फोल्डर भी चेक किया; यह खाली है। मुझे क्या करना चाहिए?
Heich-B

5

कुछ मामलों में, परिवर्तन के बाद,

PermitRootLogin yes

इस कॉन्फिग को अवश्य देखें:

DenyUsers root
AllowUsers saeid

और लॉगिन को सक्षम करने के लिए इसे बदलना होगा:

#DenyUsers root
AllowUsers root OtherUser

4

अगर u ने रूट के लिए पासवर्ड नहीं दिया है और आप स्पार्क या हैडोप जैसी कमांड पर फायर करने की कोशिश कर रहे हैं ./sbin/stop-all.sh or./sbin/start-all.sh। यदि आपके पास रूट पासवर्ड नहीं है, तो आप एक का उपयोग करके सेटअप कर सकते हैं

sudo passwd

और आग आदेश।


1

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

पहला: दोनों पीसी पर यूनिसन का एक ही संस्करण स्थापित किया। यह थोड़ा चुनौतीपूर्ण था क्योंकि सॉफ्टवेयर सेंटर पर उपलब्ध आर्क के लिए आसानी से उपलब्ध होने के पीछे था। इसलिए, मुझे उबंटू के लिए एक उच्च संस्करण नहीं मिला, इसलिए मैंने इसके बजाय आर्क पर एक कम जगह ले ली। यहाँ एक मिला: http://zdia.de/downloads/unison-2.40.102-linux-x86_64 । एक ही संस्करण उबंटू के लिए सॉफ्टवेयर सेंटर में है।

दूसरा: यहां से चरणों का पालन किया: https://www.howtoforge.com/setting-up-unison-file-synchronization-between-two-servers-on-debian-squeeze (नोट: आर्क मेरा सर्वर 1 और Ubuntu था मेरा सर्वर 2.)

मैं चरण 3 में एक समस्या में भाग गया क्योंकि मैंने ssh-copy की कोशिश की। लेकिन इसे "id_dsa.pub" को "id_rsa.pub" में बदलकर "ssh-copy-id -i $ HOME / .ssh / id_dsa.pub root@192.1684.101" लाइन में बदल दिया गया। शायद मेरी गलती, जैसा कि मुझे लगता है कि मैं "-t dsa" जोड़ना भूल गया। वैसे भी, पहले मूल कमांड का प्रयास करें। यदि आपको कोई त्रुटि मिलती है, तो rsa में बदलें।

उपरोक्त चरणों का पालन करने के बाद, मैंने पाया कि मैं अभी भी अन्य सर्वर से कनेक्ट करने के लिए Unison नहीं प्राप्त कर सका, न ही मैं दूसरे सर्वर में ssh के माध्यम से (Unison के बिना) लॉग इन कर सकता हूं। अंत में, Google खोज के घंटों के बाद, मुझे इस पृष्ठ पर ले जाया गया, और मेरे मुरू ने दिए गए जवाब ने इस सौदे को सील कर दिया।

इसे लागू करने के बाद, मैं अब SSH के माध्यम से सर्वर 2 में प्रवेश कर सकता हूं।

इसलिए मैंने यूनिसन को चलाया, और प्रोफ़ाइल सेटिंग्स को ठीक किया, और वायोला!

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