कुंजी ठीक से ~/.ssh/authorized_keysRedHat 6/ओरेकल लिनक्स 6 ssh के माध्यम से कुंजी प्रमाणीकरण की अनुमति नहीं दे
फिर भी ssh पासवर्ड के लिए उत्साह रहता है में तैनात किया गया है।
कुंजी ठीक से ~/.ssh/authorized_keysRedHat 6/ओरेकल लिनक्स 6 ssh के माध्यम से कुंजी प्रमाणीकरण की अनुमति नहीं दे
फिर भी ssh पासवर्ड के लिए उत्साह रहता है में तैनात किया गया है।
कई मुद्दों, ज्यादातर विशेषाधिकार - लेकिन यह भी RedHat पर SELinux से संबंधित 6
निम्न स्क्रिप्ट, उन सब को ठीक करना चाहिए कृपया अपने मिलान उपयोगकर्ता आईडी और समूह के साथ <user>:<group>
की जगह
chown -R <user>:<group> ~/.ssh
chmod 700 ~/.ssh
chmod 600 ~/.ssh/*
restorecon -R -v ~/.ssh
से नीचे देखें, आपको फ़ाइल अनुमतियों को विश्व पठनीय होने के लिए नहीं बदला जाना चाहिए, भले ही वे एक सुरक्षित निर्देशिका 'पुनर्स्थापना -आर-वी $ HOME/.ssh' के अंदर हों, मेरे लिए चाल क्या है – feniix
हां, यह केवल मालिक का उपयोग होना चाहिए। मेरे rhel6 बॉक्स में अभी भी 600 – feniix
के साथ काम करता है आपका मतलब है कि मेरा सुझाव खराब था? क्योंकि मैं देखता हूं कि आपने फ़ाइलों के लिए 600 के साथ अपनी प्रतिक्रिया संपादित की है। – feniix
ऊपर जवाब है काफी अच्छा, मेरे पास एक सुझाव & एक सुझाव है। अतिरिक्त नीचे पंक्ति 2 में है, क्योंकि घरेलू निर्देशिका अनुमतियां rshxr-x --- ssh कुंजी प्रमाणीकरण के लिए अधिक अनुमोदित नहीं हैं।
cd ~
chmod g-w,o-rwx .
chmod 700 .ssh
cd .ssh
chmod 600 *
chmod 644 authorized_keys
chmod 644 known_hosts
chmod 644 config
restorecon -R -v ../.ssh
सुझाव परीक्षण के दौरान -vv विकल्प का उपयोग करना है।
मैं मूल खाते में अधिकांश लिनक्स रूपों पर काम करने के ऊपर दिए गए परिवर्तनों से सहमत हूं। मुझे डीएसए ऑथ का उपयोग करने के लिए पोस्टग्रेस उपयोगकर्ता खाता प्राप्त करने का प्रयास करने के साथ RedHat 6.3 के साथ कोई समस्या हुई है। (6.3 वर्चुअलबॉक्स में चल रहा है)
समस्या यह हो सकती है कि मूल सेलिंकक्स अनुमतियां गलत हैं। Restorecon इस मामले में मदद नहीं करेंगे।
(After restorecon)
drwx------. postgres postgres unconfined_u:object_r:var_lib_t:s0 .ssh
मैं के साथ इस तय कर दी है:
chcon -R -t ssh_home_t .ssh
यह समस्या का इस उदाहरण संकल्प लिया।
मैं इस उत्तर के लिए तीन दिन खोज रहा हूं! यह तब तक नहीं था जब तक मैंने अधिकृत कुंजी फ़ाइल पर स्टेटस नहीं चलाया, जिसे मैंने फ़ाइल पर एक SELinux संदर्भ देखा था। मैंने इसे एक अलग उपयोगकर्ता के लिए एक अधिकृत कुंजी फ़ाइल से तुलना की और अंतर देखा! धन्यवाद, ग्रेग! – BamaPookie
एक अतिरिक्त बिंदु मैंने खोजा: यदि आप बाद में इस .ssh निर्देशिका पर पुनर्स्थापना चलाते हैं, तो आप chcon कमांड के साथ किए गए परिवर्तनों को खो देंगे। आपको एक ऐसी पॉलिसी भी जोड़नी होगी जो फाइल सिस्टम रिलाबेल पर संदर्भ को सही तरीके से दोबारा लागू करे। मैंने निम्न आदेश के साथ ऐसा किया: semanage fcontext -a -t ssh_home_t "/path/to/service/home/.ssh(/.*)?"। (पूर्ण पथ का उपयोग करना सुनिश्चित करें।) – BamaPookie
सही आदेश: semanage fcontext -a -t ssh_home_t "/path/to/service/home/\.ssh(/.*)?" – BamaPookie
मेरे पास भी यही समस्या थी, ऊपर प्रस्तावित समाधान ने मेरे लिए मामला हल नहीं किया। उन में/var/log/सुरक्षित फ़ाइलों के
br ब्रूनो
क्या यह निर्देश आपके लिए मामला हल करता है? या यह सिर्फ एक संकलन है? –
चेक/var/log/सुरक्षित यह जानकारी होगी अगर सार्वजनिक कुंजी प्रमाणीकरण के लिए विफल रहा है। सबसे अधिक संभावना फाइलों में ~/.ssh में गलत पढ़ने/लिखने की अनुमति है। – mguymon
मेरे मामले में परम ठीक थे। यह SELinux से संबंधित था, –