मैं दूरस्थ लॉगिन के लिए प्रमाणीकरण के लिए पासकोड जनरेटर का उपयोग कैसे कर सकता हूं?


55

मैं एक अन्य कारक जोड़कर अपने SSH लॉगिन के प्रमाणीकरण को मजबूत करना चाहूंगा: एक पासकोड जनरेटर डिवाइस, या मेरे मोबाइल फोन पर एक पासकोड जेनरेशन एप्लिकेशन। डिफ़ॉल्ट सेटअप में एकमात्र स्पष्ट विकल्प एक निश्चित पासवर्ड और कुंजी जोड़ी है। मैं यह कैसे कर सकता हूँ?

(यदि मैं पासवर्ड प्लस पासकोड जनरेटर का उपयोग करता हूं, तो यह दो-कारक प्रमाणीकरण (2FA) प्रदान करता है : पासवर्ड "मैं क्या जानता हूं", और पासकोड "मेरे पास" है।)

जवाबों:


49

ऐसा करने का एक तरीका Google द्वारा प्रदान किए गए टूल के साथ है जिसे Google प्रमाणक कहा जाता है ।

  1. Libpam-google-Authatorator स्थापित करें Libpam-google-Authatorator स्थापित करें

    • या केवल sudo apt-get install libpam-google-authenticator
  2. /etc/pam.d/sshdमॉड्यूल शामिल करने के लिए संपादित करें :

    • sudoedit /etc/pam.d/sshd
    • और फिर इस पंक्ति को फ़ाइल के शीर्ष पर शामिल करें और सहेजें:

      auth required pam_google_authenticator.so
      
  3. चुनौती को चालू करने के लिए अपनी SSH config फाइल को संपादित करें:

    • sudoedit /etc/ssh/sshd_config और फिर प्रतिक्रिया प्रमाणीकरण को इससे बदलें:

      ChallengeResponseAuthentication no 
      

      सेवा

      ChallengeResponseAuthentication yes
      

      और फिर फाइल को सेव करें।

  4. sudo restart ssh SSH को पुनः आरंभ करने के लिए

  5. Daud google-authenticator

    • यह आपको आपकी गुप्त कुंजी, सत्यापन कोड और आपातकालीन स्क्रैच कोड देगा। यह आपको कुछ दर सीमित प्रश्न पूछेगा।

मोबाइल एप्लीकेशन:

किसी अन्य डिवाइस पर प्रमाणीकरण कोड प्राप्त करने के लिए आपको इनमें से एक की आवश्यकता होगी।

संबंधित और उपयोगी:

ध्यान दें कि एकल-उपयोग पासकोड के साथ एक पासवर्ड का संयोजन दो-कारक प्रमाणीकरण है: यह "जो आप जानते हैं" (एक पासवर्ड) को "आपके पास क्या है" (पासकोड जनरेटर डिवाइस) के साथ जोड़ता है। दूसरी ओर, यदि आप SSH कुंजी जोड़ी के साथ एकल-उपयोग पासकोड को जोड़ते हैं, तो यह "आपके पास क्या है" के बारे में है। जब दो प्रमाणीकरण कारक एक ही प्रकार के होते हैं, तो आपके पास दो-कारक प्रमाणीकरण नहीं होते हैं; इसे कभी-कभी "एक-एक-आधा-कारक प्रमाणीकरण" कहा जाता है।


12

Google प्रमाणक आपके व्यक्तिगत सर्वर के लिए ठीक है, लेकिन आप पा सकते हैं कि यह आपके मौजूदा पहचान बुनियादी ढांचे के साथ अच्छी तरह से नहीं जुड़ा है। यदि आप अन्य विकल्पों का पता लगाना चाहते हैं, तो RADIUS को प्रमाणीकरण प्रोटोकॉल और पाम-त्रिज्या प्लगइन के रूप में उपयोग करने के बारे में सोचें। सभी उद्यम-उन्मुख दो-कारक प्रमाणीकरण प्रणाली त्रिज्या का समर्थन करती हैं। हमने Ubuntu पर pam-radius के माध्यम से WiKID टू-फैक्टर ऑथेंटिकेशन को जोड़ने का तरीका लिखा है ।

त्रिज्या का उपयोग करने से आप एसएसएच के अलावा अन्य प्रणालियों में भी उसी प्रमाणीकरण सर्वर से जुड़ सकते हैं। प्रमाणीकरण से प्राधिकरण को अलग करने के लिए आप फ्रीडैडियस के माध्यम से एलडीएपी और फिर अपने 2FA सर्वर पर कई अनुरोधों को रूट कर सकते हैं। आप AD btw के साथ भी ऐसा ही कर सकते हैं।


1

मैं कम से निम्न पंक्ति डाल करने के लिए हर किसी से आग्रह करता हूं तल पर शीर्ष और नहीं के /etc/pam.d/sshdरूप में पहले से (अब सही) ऊपर वर्णित:

auth required pam_google_authenticator.so

अन्यथा आपका सिस्टम आपके पासवर्ड पर ब्रूट फोर्स के हमलों के लिए खुला रहेगा , दो-कारक प्रमाणीकरण के पहले भाग की पुष्टि करता है: आपका पासवर्ड।

आपसे पहले आपके सत्यापन कोड के लिए पूछा जाएगा, और फिर आपका पासवर्ड (भले ही कोड सही हो)। यदि दोनों में से कोई एक गलत है, तो आपको फिर से प्रवेश करने की आवश्यकता है। आप इसे दूसरे तरीके से कॉन्फ़िगर कर सकते हैं लेकिन वर्तमान डिफ़ॉल्ट ubuntu (15.04) sshd कॉन्फ़िगरेशन में वर्णन करने के लिए यह थोड़ा अधिक कठिन परिवर्तन है।

इसकी आवश्यकता के विवरण के लिए, इस समस्या की जाँच करें:

https://github.com/google/google-authenticator/issues/514

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