टेलीग्राम बॉट के साथ ओपनवीपीएन में दो-कारक प्रमाणीकरण

लेख टेलीग्राम बॉट के साथ दो-कारक प्रमाणीकरण को सक्षम करने के लिए एक ओपनवीपीएन सर्वर स्थापित करने का वर्णन करता है जो कनेक्ट होने पर एक पुष्टिकरण अनुरोध भेजेगा।

ओपनवीपीएन एक प्रसिद्ध, मुफ़्त, ओपन-सोर्स वीपीएन सर्वर है जिसका व्यापक रूप से आंतरिक संगठनात्मक संसाधनों तक सुरक्षित कर्मचारी पहुंच को व्यवस्थित करने के लिए उपयोग किया जाता है।

वीपीएन सर्वर से कनेक्ट करने के लिए प्रमाणीकरण के रूप में, आमतौर पर एक कुंजी और उपयोगकर्ता लॉगिन/पासवर्ड का संयोजन उपयोग किया जाता है। उसी समय, क्लाइंट पर संग्रहीत पासवर्ड पूरे सेट को एक कारक में बदल देता है जो उचित स्तर की सुरक्षा प्रदान नहीं करता है। एक हमलावर, क्लाइंट कंप्यूटर तक पहुंच प्राप्त करने के बाद, वीपीएन सर्वर तक भी पहुंच प्राप्त करता है। यह विंडोज़ चलाने वाली मशीनों से कनेक्शन के लिए विशेष रूप से सच है।

दूसरे कारक का उपयोग करने से अनधिकृत पहुंच का जोखिम 99% कम हो जाता है और उपयोगकर्ताओं के लिए कनेक्शन प्रक्रिया बिल्कुल भी जटिल नहीं होती है।

मुझे तुरंत आरक्षण करने दें: कार्यान्वयन के लिए आपको एक तृतीय-पक्ष प्रमाणीकरण सर्वर मल्टीफैक्टर.ru कनेक्ट करना होगा, जिसमें आप अपनी आवश्यकताओं के लिए निःशुल्क टैरिफ का उपयोग कर सकते हैं।

आपरेशन के सिद्धांत

  1. OpenVPN प्रमाणीकरण के लिए openvpn-plugin-auth-pam प्लगइन का उपयोग करता है
  2. प्लगइन सर्वर पर उपयोगकर्ता के पासवर्ड की जांच करता है और मल्टीफैक्टर सेवा में RADIUS प्रोटोकॉल के माध्यम से दूसरे कारक का अनुरोध करता है
  3. मल्टीफैक्टर उपयोगकर्ता को टेलीग्राम बॉट के माध्यम से पहुंच की पुष्टि करने वाला एक संदेश भेजता है
  4. उपयोगकर्ता टेलीग्राम चैट में एक्सेस अनुरोध की पुष्टि करता है और वीपीएन से जुड़ता है

एक OpenVPN सर्वर स्थापित करना

इंटरनेट पर OpenVPN को स्थापित करने और कॉन्फ़िगर करने की प्रक्रिया का वर्णन करने वाले कई लेख हैं, इसलिए हम उनकी नकल नहीं करेंगे। यदि आपको सहायता की आवश्यकता है, तो लेख के अंत में ट्यूटोरियल के कई लिंक हैं।

मल्टीफैक्टर की स्थापना

के लिए जाओ बहुकारक नियंत्रण प्रणाली, "संसाधन" अनुभाग पर जाएं और एक नया वीपीएन बनाएं।
एक बार बन जाने के बाद, आपके पास दो विकल्प उपलब्ध होंगे: NAS-पहचानकर्ता и साझा रहस्य, बाद के कॉन्फ़िगरेशन के लिए उनकी आवश्यकता होगी।

टेलीग्राम बॉट के साथ ओपनवीपीएन में दो-कारक प्रमाणीकरण

"समूह" अनुभाग में, "सभी उपयोगकर्ता" समूह सेटिंग्स पर जाएं और "सभी संसाधन" ध्वज को हटा दें ताकि केवल एक निश्चित समूह के उपयोगकर्ता ही वीपीएन सर्वर से जुड़ सकें।

एक नया समूह "वीपीएन उपयोगकर्ता" बनाएं, टेलीग्राम को छोड़कर सभी प्रमाणीकरण विधियों को अक्षम करें और इंगित करें कि उपयोगकर्ताओं के पास बनाए गए वीपीएन संसाधन तक पहुंच है।

टेलीग्राम बॉट के साथ ओपनवीपीएन में दो-कारक प्रमाणीकरण

"उपयोगकर्ता" अनुभाग में, ऐसे उपयोगकर्ता बनाएं जिनके पास वीपीएन तक पहुंच होगी, उन्हें "वीपीएन उपयोगकर्ता" समूह में जोड़ें और प्रमाणीकरण के दूसरे कारक को कॉन्फ़िगर करने के लिए उन्हें एक लिंक भेजें। उपयोगकर्ता लॉगिन वीपीएन सर्वर पर लॉगिन से मेल खाना चाहिए।

टेलीग्राम बॉट के साथ ओपनवीपीएन में दो-कारक प्रमाणीकरण

एक OpenVPN सर्वर स्थापित करना

फ़ाइल खोलें /etc/openvpn/server.conf और PAM मॉड्यूल का उपयोग करके प्रमाणीकरण के लिए एक प्लगइन जोड़ें

plugin /usr/lib64/openvpn/plugins/openvpn-plugin-auth-pam.so openvpn

प्लगइन निर्देशिका में स्थित हो सकता है /usr/lib/openvpn/प्लगइन्स/ या /usr/lib64/openvpn/प्लगइन्स/ आपके सिस्टम पर निर्भर करता है।

इसके बाद आपको pam_radius_auth मॉड्यूल इंस्टॉल करना होगा

$ sudo yum install pam_radius

संपादन के लिए फ़ाइल खोलें /etc/pam_radius.conf और मल्टीफैक्टर के RADIUS सर्वर का पता निर्दिष्ट करें

radius.multifactor.ru   shared_secret   40

जहाँ:

  • Radius.multifactor.ru — सर्वर पता
  • शेयर्ड_सीक्रेट - संबंधित वीपीएन सेटिंग्स पैरामीटर से कॉपी करें
  • 40 सेकंड - बड़े मार्जिन के साथ अनुरोध की प्रतीक्षा के लिए समयबाह्य

शेष सर्वरों को हटा दिया जाना चाहिए या टिप्पणी की जानी चाहिए (शुरुआत में अर्धविराम लगाएं)

इसके बाद, सेवा-प्रकार openvpn के लिए एक फ़ाइल बनाएं

$ sudo vi /etc/pam.d/openvpn

और इसे लिखें

auth    required pam_radius_auth.so skip_passwd client_id=[NAS-IDentifier]
auth    substack     password-auth
account substack     password-auth

पहली पंक्ति PAM मॉड्यूल pam_radius_auth को मापदंडों से जोड़ती है:

  • Skip_passwd - उपयोगकर्ता के पासवर्ड को RADIUS मल्टीफैक्टर सर्वर पर प्रसारित करना अक्षम कर देता है (उसे इसे जानने की आवश्यकता नहीं है)।
  • client_id - वीपीएन संसाधन सेटिंग्स से संबंधित पैरामीटर के साथ [NAS-पहचानकर्ता] को बदलें।
    सभी संभावित मापदंडों का वर्णन किया गया है मॉड्यूल के लिए दस्तावेज़ीकरण.

दूसरी और तीसरी पंक्ति में दूसरे प्रमाणीकरण कारक के साथ आपके सर्वर पर लॉगिन, पासवर्ड और उपयोगकर्ता अधिकारों का सिस्टम सत्यापन शामिल है।

ओपनवीपीएन पुनः प्रारंभ करें

$ sudo systemctl restart openvpn@server

क्लाइंट सेटअप

क्लाइंट कॉन्फ़िगरेशन फ़ाइल में उपयोगकर्ता लॉगिन और पासवर्ड के लिए अनुरोध शामिल करें

auth-user-pass

Проверка

OpenVPN क्लाइंट लॉन्च करें, सर्वर से कनेक्ट करें, अपना उपयोगकर्ता नाम और पासवर्ड दर्ज करें। टेलीग्राम बॉट दो बटनों के साथ एक एक्सेस अनुरोध भेजेगा

टेलीग्राम बॉट के साथ ओपनवीपीएन में दो-कारक प्रमाणीकरण

एक बटन पहुंच की अनुमति देता है, दूसरा इसे अवरुद्ध करता है।

अब आप क्लाइंट पर अपना पासवर्ड सुरक्षित रूप से सहेज सकते हैं; दूसरा कारक आपके ओपनवीपीएन सर्वर को अनधिकृत पहुंच से विश्वसनीय रूप से सुरक्षित रखेगा।

अगर कुछ काम नहीं करता

क्रमिक रूप से जांचें कि आपने कुछ भी नहीं छोड़ा है:

  • OpenVPN वाले सर्वर पर पासवर्ड सेट वाला एक उपयोगकर्ता है
  • सर्वर के पास UDP पोर्ट 1812 के माध्यम से Radius.multifactor.ru पते तक पहुंच है
  • NAS-पहचानकर्ता और साझा गुप्त पैरामीटर सही ढंग से निर्दिष्ट हैं
  • मल्टीफैक्टर सिस्टम में समान लॉगिन वाला एक उपयोगकर्ता बनाया गया है और उसे वीपीएन उपयोगकर्ता समूह तक पहुंच प्रदान की गई है
  • उपयोगकर्ता ने टेलीग्राम के माध्यम से प्रमाणीकरण विधि को कॉन्फ़िगर किया है

यदि आपने पहले OpenVPN सेट अप नहीं किया है, तो पढ़ें विस्तारित लेख.

निर्देश CentOS 7 पर उदाहरणों के साथ बनाए गए हैं।

स्रोत: www.habr.com

एक टिप्पणी जोड़ें