Image

ज्ञानधार → Centos 7 पर Google प्रमाणक का उपयोग करके SSH में दो कारक प्रमाणीकरण स्थापित करना

[वर्चुअल सर्वर]
प्रकाशन तिथि: 29.11.2022

एसएसएच सेवा में पासवर्ड अनुमान लगाने वाले हमलों की संख्या सबसे अधिक है। आपने अभी-अभी अपना सर्वर लॉन्च किया है और कुछ घंटों के बाद आप लॉग में देख सकते हैं अज्ञात आईपी पते से कनेक्शन प्रयास देखें। प्रयासों की संख्या कम करने के लिए, हम तुरंत sshd सेटिंग्स में पोर्ट नंबर बदलने की सलाह देते हैं। बेशक, आपको अक्षरों, प्रतीकों और संख्याओं, केस सेंसिटिव का उपयोग करके अच्छी जटिलता का पासवर्ड निर्दिष्ट करना चाहिए। लिनक्स सर्वर के लिए, एक नियम के रूप में, आपको 2 पासवर्ड याद रखने होंगे, 1 नियमित उपयोगकर्ता के लिए, दूसरा रूट के लिए। यदि कई सर्वर हैं, तो, एक नियम के रूप में, वे विभिन्न अनुप्रयोगों का सहारा लेते हैं जो सत्र सेटिंग्स (होस्ट, लॉगिन और पासवर्ड) संग्रहीत करेंगे, जो तब तक काफी सामान्य है जब तक कोई हमलावर आपके कार्य केंद्र तक पहुंच प्राप्त नहीं कर लेता। किसी भी स्थिति में, संक्रमित साइटें, सॉफ़्टवेयर इत्यादि हैं। इससे पता चलता है कि आप पूरी तरह से आश्वस्त नहीं हो सकते कि यह डेटा केवल आपके लिए सुरक्षित और सुलभ है। इस मामले का एक समाधान है.

दो-कारक प्रमाणीकरण - आपके फ़ोन पर आपके लॉगिन और पासवर्ड में एक एप्लिकेशन जोड़ा जाता है, जो समय और एक अद्वितीय कुंजी के आधार पर, संख्याओं के रूप में एक प्रश्न और प्रश्न उत्तर उत्पन्न करता है। अपना लॉगिन और पासवर्ड दर्ज करने के बाद, आपको एक सत्यापन कोड दर्ज करने के लिए कहा जाएगा, जिसे एप्लिकेशन में एक्सेस किया जा सकता है Google Authenticator.

आइए आवश्यक पैकेज स्थापित करें

yum install pam pam-devel google-authenticator 

आइए मोबाइल एप्लिकेशन इंस्टॉल करें

 

समायोजन

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

adduser username
passwd username
su username


उस उपयोगकर्ता के रूप में कमांड चलाएँ जिसके लिए आप दो-कारक प्रमाणीकरण सेट कर रहे हैं:

google-authenticator

पहले संदेश में "y" पर क्लिक करें जहां आपसे पूछा जाएगा कि क्या आप ./google_authenticator फ़ाइल को अपडेट करना चाहते हैं। जब एकाधिक उपयोगों को अक्षम करने के लिए कहा जाए, तो किसी अन्य उपयोगकर्ता को आपके कोड का उपयोग करने से रोकने के लिए फिर से "y" दबाएं। बाकी विकल्पों के लिए, "y" दबाएँ क्योंकि ये सभी इस सॉफ़्टवेयर की दक्षता को बढ़ाते हैं।

सुनिश्चित करें कि आपने गुप्त कुंजी और आपातकालीन पुनर्प्राप्ति कोड को कागज के एक टुकड़े पर कॉपी कर लिया है। इस जानकारी को ऑफ़लाइन रखें, क्योंकि अगर किसी को यह जानकारी मिल भी जाती है, तब भी आपको लॉग इन करने के लिए होस्ट, लॉगिन और पासवर्ड जानना होगा।

आइए अब अपनी सभी सेटिंग्स को SSH सेवा पर लागू करने के लिए PAM को कॉन्फ़िगर करें, ये क्रियाएं उपयोगकर्ता द्वारा पहले ही की जानी चाहिए root

vi /etc/pam.d/sshd

फ़ाइल की शुरुआत में पंक्तियाँ जोड़ें ताकि यह इस तरह दिखे:

#%PAM-1.0
auth required pam_unix.so no_warn try_first_pass 
auth required pam_google_authenticator.so

हम शेष पंक्तियाँ जो फ़ाइल में थीं, छोड़ देते हैं, वे बिना किसी बदलाव के नीचे चली जाती हैं। आइए फ़ाइल को सहेजें और SSH सेवा की स्थापना के लिए आगे बढ़ें।

vi /etc/ssh/sshd_config

"ChallengerResponseAuthentication" पैरामीटर ढूंढें और "नहीं" को "हां" में बदलें। परिवर्तन सहेजें और सेवा पुनः प्रारंभ करें.

service sshd restart

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

संशोधन:

  • इनपुट अनुक्रम बदलना:

हम विशेष रूप से लॉगिन-पासवर्ड और फिर सत्यापन कोड का क्रम निर्धारित करते हैं। यदि आप पहले एप्लिकेशन से कोड और फिर पासवर्ड दर्ज करना चाहते हैं, तो बस पहली पंक्ति हटा दें ताकि फ़ाइल इस तरह दिखे:

#%PAM-1.0
auth required pam_google_authenticator.so
  • रूट के रूप में लॉग इन करते समय दो-कारक प्रमाणीकरण

उदाहरण के लिए, आप लॉगिन और पासवर्ड के साथ एक नियमित उपयोगकर्ता के रूप में सर्वर में लॉग इन करना चाहते हैं, और su कमांड दर्ज करते समय, रूट पासवर्ड और एप्लिकेशन से कोड दर्ज करें। ./google_authenticator एप्लिकेशन को रूट के रूप में चलाएं जैसा आपने पहले किया था। नए कोड के साथ मोबाइल एप्लिकेशन सेट करें और फ़ाइल में जोड़ें:

vi /etc/pam.d/su

पंक्ति की शुरुआत तक:

#%PAM-1.0
auth required pam_unix.so no_warn try_first_pass 
auth required pam_google_authenticator.so


बस, आपको सेवा पुनः आरंभ करने की आवश्यकता नहीं है। अब, जब आप रूट के रूप में लॉग इन करने का प्रयास करेंगे, तो कमांड को एप्लिकेशन से एक सत्यापन कोड की आवश्यकता होगी।


पी.एस. हम त्रुटियों से बचने के लिए किसी अन्य एसएसएच सत्र में जांच करने की सलाह देते हैं, आपके पास वापस जाकर इसे ठीक करने का अवसर होगा।





No Comments Yet