क्या SSH लॉगिंग क्षमताएं निजी / सार्वजनिक कुंजी प्रमाणीकरण के लिए su लॉगिंग के बराबर हैं?


11

यहां काम पर, हमारे पास UNIX पर एक गैर-रूट साझा लॉगिन खाता है जो किसी विशेष एप्लिकेशन को प्रशासित करने के लिए उपयोग किया जाता है। पॉलिसी साझा खाते में सीधे लॉगिन की अनुमति नहीं है; आपको अपने आप को लॉगिन करना होगा और साझा खाते पर बदलने के लिए "सु" कमांड का उपयोग करना होगा। यह लॉगिंग / सुरक्षा उद्देश्यों के लिए है।

मैंने एक एजेंट के साथ SSH सार्वजनिक / निजी कुंजी प्रमाणीकरण का उपयोग करना शुरू कर दिया है, जिससे मुझे दिन में एक बार अपना पासवर्ड दर्ज करने की अनुमति मिलती है और एजेंट को शेष दिन के लिए पासवर्ड संकेतों को समाप्त करने की अनुमति मिलती है। यह वास्तव में अच्छा है।

हालांकि, कुछ सिस्टम बंद हो गए हैं इसलिए मुझे वास्तव में साझा खाते में जाने के लिए "सु" कमांड का उपयोग करना होगा। आर्ग! हर समय पासवर्ड दर्ज करने के लिए वापस!

क्या SSH सार्वजनिक / निजी कुंजी प्रमाणीकरण के साथ पर्याप्त जानकारी लॉग की गई है, ताकि मुझे सार्वजनिक / निजी कुंजी का उपयोग करने पर किसी साझा खाते में दूरस्थ लॉगिन की अनुमति देने के लिए नीति में बदलाव का अनुरोध करने का उचित मौका मिल सके?

मेरे पास / var / log / सुरक्षित में व्यवस्थापक रूप था और यह केवल कहता है कि किसी विशेष IP पते से उपयोगकर्ता खाते के लिए एक सार्वजनिक कुंजी स्वीकार की गई थी। यह नहीं कहा कि यह किसकी सार्वजनिक कुंजी है, या किसकी निजी कुंजी ने प्रमाणीकरण किया है।

जवाबों:


13

sshd_configफ़ाइल के माध्यम से लॉगिंग के कई स्तर उपलब्ध हैं । देखें आदमी पेज और के लिए देखो LogLevel। डिफ़ॉल्ट स्तर है, INFOलेकिन यह VERBOSEएक DEBUG#स्तर तक या यहां तक ​​कि इसे टक्कर देना बहुत आसान है।

इसके अतिरिक्त, आपको sudoएक विकल्प के रूप में पता लगाना चाहिए su। के लाभों की एक पूरी चर्चा sudoअपने आप में एक सवाल होगी। लेकिन मैं कह सकता हूं कि sudoआप दर्जी के साथ कितनी बार आपको अपना पासवर्ड दर्ज कर सकते हैं, जो कमांड चलाए जा सकते हैं, आदि, सभी sudoers config फाइल के माध्यम से चलाया जा सकता है ।


एक सुडोल प्रतिस्थापन के सुझाव के लिए वोट किया गया।
मैट सिमंस

6

एक अन्य तरीका authorized_keysउपयोगकर्ता के दायरे से बाहर जाना होगा (उदाहरण के लिए /etc/ssh/authorized_keys) ताकि केवल sysadmins नियंत्रित करेगा कि सार्वजनिक कुंजी का उपयोग दिए गए खातों में लॉग इन करने के लिए किया जा सकता है।

हम निम्नलिखित की तरह कुछ AuthorizedKeysFileमें निर्देश को बदलते थे sshd_config

AuthorizedKeysFile /etc/ssh/authorized_keys/%u

फिर /etc/ssh/authorized_keysप्रत्येक उपयोगकर्ता के लिए फ़ाइलों के साथ निर्देशिका बनाएं और आबाद करें, जो यह सुनिश्चित करने में सक्षम हो कि rootफ़ाइल बनाना संभव है / केवल जड़ और अन्य उपयुक्त फ़ाइलों द्वारा पठनीय / लेखनीय है, जैसे कि:

-rw-------  1 root root    1,7K 2008-05-14 14:38 root
-rw-r-----  1 root john     224 2008-11-18 13:15 john

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

सार्वजनिक / निजी कुंजी का उपयोग करना दूरस्थ उपयोगकर्ता अभिगम को नियंत्रित करने का एक बेहतर तरीका है। आपको हर महीने पासवर्ड बदलने की ज़रूरत नहीं है (आपको इसे या तो सेट करने की ज़रूरत नहीं है), और इसे केवल इसलिए नहीं बदलना होगा क्योंकि एक कर्मचारी ने आपकी कंपनी को छोड़ दिया था, बस उनकी सार्वजनिक कुंजी को हटा दें; और निश्चित रूप से SSH विकल्पों ( http://www.openbsd.org/cgi-bin/man.cgi?query=sshd&sektion=8#SSHRC) के साथ आप क्या और कहाँ से किसी दिए गए उपयोगकर्ता की पहुंच हो सकती है, के लिए अनाज को ठीक कर सकते हैं।


1

SSH सार्वजनिक / निजी कुंजी प्रमाणीकरण होस्ट प्रमाणीकरण से अलग है। आप यहां भाग्य से बाहर हैं। आप अनुरोध कर सकते हैं कि विशेष समूह के सदस्यों sudoको पासवर्ड के बिना कुछ प्रशासनिक कमांड चलाने की अनुमति दी जाए - जैसे कि उदाहरण bellow secretariesसमूह में उपयोगकर्ताओं को खातों का प्रबंधन करने की अनुमति देता है :


# file: /etc/sudoers
...
%secretaries    ALL= NOPASSWD: /usr/bin/adduser, /usr/bin/rmuser   
...

दूसरा यह .. यह बहुत आसान है, जब आप SUDO का उपयोग करते हैं, तो ऑडिट करना आसान है। आप उपयोगकर्ता जो टाइप किए गए "sudo appname -options" देख सकते हैं, जो रूट टाइप किए गए "appname -options" को देखने की तुलना में बहुत सरल है और फिर सामंजस्य स्थापित करना होगा उस समय सभी रूट के रूप में लॉग इन थे।
ब्रायन

ठीक है, इससे मदद मिलती है। हालांकि, हमारे कुछ कार्य डेमन प्रक्रियाओं को शुरू करने और रोकने के लिए हैं। क्या सूडो हमें साझा समूह उपयोगकर्ता नाम के रूप में "स्टार्ट" और "स्टॉप" स्क्रिप्ट चलाने की अनुमति देगा? (यह गैर-रूट है) हम चाहते हैं कि हमारे द्वारा साझा किए गए खाते के उपयोगकर्ता नाम के अनुसार प्रक्रियाएं हों।
डेविड आई।

हां, -uविकल्प आपको ऐसा करने देता है, मैनुअल sudo.ws/sudo/man/1.8.1/sudo.man.html
निकोलाई एन Fetissov
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.