जवाबों:
नोट: एक बार जब आपने उपयोगकर्ता के लिए 2-कारक प्रमाणीकरण को सक्रिय कर दिया है और इसे रूट के लिए सेट नहीं किया है, तो आप कभी भी सीधे रूट के रूप में लॉगिन नहीं कर पाएंगे। इस तरह के एक मामले में चारों ओर एक अन्य sudo उपयोगकर्ता का उपयोग करना है जिसके लिए हमारे पास यह सेटअप है और फिर sudo su -
रूट उपयोगकर्ता पर स्विच करने के लिए उपयोग करें।
इसे सेट करने के लिए नीचे दिए गए चरणों का उपयोग करें।
Google प्रमाणक को स्थापित करने के लिए नीचे दिए गए पैकेज को स्थापित करें जिसे हम PAM प्रमाणीकरण के साथ ऐड-ऑन के रूप में उपयोग करेंगे:
sudo apt-get install libpam-google-authenticator
अब /etc/pam.d/sshd
इस फ़ाइल को संपादित करें और नीचे दिए अनुसार Google प्रमाणक जोड़ें:
*sudo vim /etc/pam.d/sshd
शीर्ष पर इस फ़ाइल में दर्ज करें-
auth required pam_google_authenticator.so
यहां हमें /etc/ssh/sshd_config
Google प्रमाणक का उपयोग करने के लिए ssh सुनिश्चित करने के लिए परिवर्तन करना होगा, इस तरह से हम सुनिश्चित करते हैं कि ssh दो कारक प्रमाणीकरण का उपयोग कर रहा है।
vim /etc/ssh/sshd_config
इस फ़ाइल में हमें इसे ढूंढना है ChallengeResponseAuthentication
और अनकम्फर्ट करना है और / या इसे नीचे जैसा दिखने के लिए संशोधित करना है (संक्षेप में इसे हां: P):
ChallengeResponseAuthentication yes
अतिरिक्त या GUI 2-कारक प्रमाणीकरण को छोड़ दें और चरण 4 पर जाएं: GUI लॉगिन के लिए इसे सक्षम करने के लिए, संपादित करें /etc/pam.d/common-auth
:
sudo vim /etc/pam.d/common-auth
और अब auth required pam_google_authenticator.so
इसे लाइन के ऊपर जोड़ें और auth [success=1 default=ignore] pam_unix.so nullok_secure
फिर फाइल को सेव करें।
अब उस खाते में बदलें, जिस पर आप इसे सेट करना चाहते हैं।
( नोट: मैं रूट खाते के अलावा सिस्टम पर कम से कम दो सुपर उपयोगकर्ता खाते बनाने का सुझाव दूंगा और इसे कम से कम पहले उनमें से एक के लिए कॉन्फ़िगर कर सकता हूं लेकिन रूट खाता नहीं।)
sudo su - testuser1
अब हम इसके लिए दो-कारक प्रमाणीकरण की स्थापना के लिए कमांड का उपयोग करेंगे testuser1
:
google-authenticator
इस कमांड को चलाने से आप नीचे सवाल पूछेंगे। (अनुशंसित उत्तर हां है)
क्या आप चाहते हैं कि प्रमाणीकरण टोकन समय-आधारित (y / n) y हो
उसके बाद यह आपको क्यूआर कोड और इमरजेंसी स्क्रैच कोड और कुछ अन्य विवरण दिखाएगा। नीचे दी गई छवि की तरह दिखना चाहिए:
अब आपको Google बाज़ार स्टोर से संबंधित बाज़ार स्थानों से Google प्रमाणक एप्लिकेशन को डाउनलोड और इंस्टॉल करने के लिए अपने एंड्रॉइड / ऐप्पल / ब्लैकबेरी फोन का उपयोग करने की आवश्यकता है । जो आपको लॉगिन करने के लिए कोड उत्पन्न करेगा।
नीचे एप्लिकेशन आइकन का स्क्रीनशॉट और एप्लिकेशन एंड्रॉइड फोन से लिया गया है।
अपने फोन पर एप्लिकेशन शुरू करें और क्यूआर कोड को स्कैन करें अन्यथा सिस्टम पर क्यूआर कोड के नीचे दी गई गुप्त कुंजी और सत्यापन कोड का उपयोग करें , जिसे आप ऊपर दिए गए पहले स्क्रीनशॉट में भी देख सकते हैं।
एक बार यह सब हो जाने के बाद, अपने आपातकालीन स्क्रैच कोड को सुरक्षित स्थान पर सहेजना और सहेजना बहुत महत्वपूर्ण है, क्योंकि वे कोड हैं जो आपको किसी भी तरह लॉक होने की स्थिति में मदद कर सकते हैं।
इस समय आपको स्क्रीन के निचले भाग पर एक नज़र डालनी चाहिए जहाँ यह आपसे एक नीचे का प्रश्न पूछ रहा है। (अनुशंसित उत्तर हां है):
क्या आप चाहते हैं कि मैं आपकी "/home/testuser1/.google_authenticator" फ़ाइल (y / n) y को अपडेट करूं
फिर से यह आपसे एक प्रश्न पूछेगा और नीचे दिए गए प्रश्न के लिए अनुशंसित उत्तर भी हाँ है:
क्या आप एक ही प्रमाणीकरण टोकन के कई उपयोगों को अस्वीकार करना चाहते हैं? यह आपको हर 30 के बारे में एक लॉगिन करने के लिए प्रतिबंधित करता है, लेकिन यह आपके बीच-बीच में होने वाले हमलों (y / n) y को नोटिस करने या रोकने के लिए आपके अवसरों को बढ़ाता है।
अगला प्रश्न नीचे दिया जाएगा और इसके लिए अनुशंसित उत्तर नहीं है:
डिफ़ॉल्ट रूप से, टोकन 30 सेकंड के लिए अच्छे हैं और क्लाइंट और सर्वर के बीच संभावित समय-तिरछी क्षतिपूर्ति करने के लिए, हम वर्तमान समय से पहले और बाद में एक अतिरिक्त टोकन की अनुमति देते हैं। यदि आप खराब समय सिंक्रनाइज़ेशन के साथ समस्याओं का अनुभव करते हैं, तो आप विंडो को इसके डिफ़ॉल्ट आकार 1: 30min से लगभग 4min तक बढ़ा सकते हैं। क्या आप ऐसा करना चाहते हैं (y / n) n
और अंतिम प्रश्न नीचे दिया जाएगा और इसके लिए अनुशंसित उत्तर हां है:
यदि आप जिस कंप्यूटर पर लॉग-इन कर रहे हैं, वह ब्रूट-फोर्स लॉगिन प्रयासों के विरुद्ध कठोर नहीं है, तो आप प्रमाणीकरण मॉड्यूल के लिए दर-सीमा को सक्षम कर सकते हैं। डिफ़ॉल्ट रूप से, यह हमलावरों को हर 30 के 3 से अधिक लॉगिन प्रयासों तक सीमित नहीं करता है। क्या आप दर-सीमित (y / n) y को सक्षम करना चाहते हैं
अब रूट खाते पर वापस जाने के लिए इस खाते से बाहर निकलें स्विच करें:
exit
अब ssh सर्विस को रीस्टार्ट करें
service ssh restart
अब बस उस उपयोगकर्ता के लिए एक ssh सत्र लें, जिसे आपने इसके लिए सेट किया है और यह पहले आपसे एक सत्यापन कोड मांगेगा, जिसे आप अपने मोबाइल से दर्ज कर सकते हैं और फिर यह उपयोगकर्ता का पासवर्ड मांगेगा।
यही कारण है कि दो कारक प्रमाणीकरण की स्थापना के लिए आवश्यक है। कृपया बेझिझक उस उत्तर को बेहतर बनाएं जहां आवश्यक हो और कृपया मुझे इतनी अच्छी भाषा के लिए माफ न करें।
auth optional
इसके बजाय चरण 2 में उपयोग करते हैं तो यह मशीन तक ढीली पहुंच को सुरक्षित नहीं करेगा auth required
। अन्यथा सत्र के क्रैश होने और प्रक्रिया समाप्त न होने पर लॉगिन संभव नहीं है।