توضح المقالة كيفية تكوين خادم OpenVPN لتمكين المصادقة ذات العاملين باستخدام برنامج Telegram bot ، والذي سيرسل رسالة تأكيد عند الاتصال.
OpenVPN هو خادم VPN مفتوح المصدر معروف جيدًا ويستخدم على نطاق واسع لتنظيم وصول آمن للموظفين إلى الموارد الداخلية للمؤسسة.
كمصادقة للاتصال بخادم VPN ، عادة ما يتم استخدام مزيج من مفتاح وكلمة مرور / تسجيل دخول مستخدم. في نفس الوقت ، فإن كلمة المرور المخزنة على العميل تحول المجموعة بالكامل إلى عامل واحد لا يوفر المستوى المناسب من الأمان. يتمكن المهاجم ، الذي يحصل على حق الوصول إلى جهاز كمبيوتر عميل ، من الوصول إلى خادم VPN أيضًا. هذا صحيح بشكل خاص للاتصال من الأجهزة التي تعمل بنظام Windows.
يقلل استخدام العامل الثاني بنسبة 99٪ من خطر الوصول غير القانوني ولا يعقد عملية الاتصال للمستخدمين.
قم بإجراء حجز على الفور ، من أجل التنفيذ ، ستحتاج إلى الاتصال بخادم مصادقة تابع لجهة خارجية multifactor.ru ، حيث يمكنك استخدام تعريفة مجانية لاحتياجاتك.
مبدأ التشغيل
- يستخدم OpenVPN البرنامج المساعد openvpn-plugin-auth-pam للمصادقة
- يتحقق المكون الإضافي من كلمة مرور المستخدم على الخادم ويطلب العامل الثاني عبر بروتوكول RADIUS في خدمة Multifactor
- يرسل العامل المتعدد رسالة من خلال برنامج Telegram إلى المستخدم مع تأكيد الوصول
- يؤكد المستخدم طلب الوصول في دردشة Telegram ويتصل بـ VPN
قم بتثبيت خادم OpenVPN
هناك العديد من المقالات على الإنترنت التي تصف عملية تثبيت OpenVPN وتكوينه ، لذلك لن نكررها. إذا كنت بحاجة إلى المساعدة ، فهناك العديد من الروابط إلى مواد التدريب في نهاية المقالة.
إعداد متعدد العوامل
انتقل إلى نظام إدارة Multiactor ، وانتقل إلى قسم "الموارد" وقم بإنشاء شبكة افتراضية خاصة جديدة.
بعد الإنشاء ، ستتوفر معلمتان لك: NAS-IDentifier و Shared Secret ، ستكون مطلوبة للتكوين اللاحق.

"", "All users" " ", VPN .
"VPN users", Telegram , VPN.

"" , VPN, "VPN users" . VPN .

OpenVPN
/etc/openvpn/server.conf PAM
plugin /usr/lib64/openvpn/plugins/openvpn-plugin-auth-pam.so openvpn
/usr/lib/openvpn/plugins/ /usr/lib64/openvpn/plugins/ .
pam_radius_auth
$ sudo yum install pam_radius
/etc/pam_radius.conf RADIUS
radius.multifactor.ru shared_secret 40
:
- radius.multifactor.ru —
- shared_secret — VPN
- 40 —
( )
service-type 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-Identifier] VPN .
.
, .
OpenVPN
$ sudo systemctl restart openvpn@server
auth-user-pass
OpenVPN, , . Telegram

, .
, OpenVPN .
-
, :
- على خادم مع OpenVPN ، يوجد مستخدم لديه مجموعة كلمات مرور
- الوصول من الخادم عبر منفذ UDP 1812 إلى عنوان radius.multifactor.ru
- تم تحديد معلمات NAS ومعرف السر المشترك بشكل صحيح
- لدى النظام متعدد العوامل مستخدم لديه نفس تسجيل الدخول والوصول إلى مجموعة مستخدمي VPN
- طريقة مصادقة تم تكوينها بواسطة المستخدم عبر Telegram
إذا لم تقم بتهيئة OpenVPN مسبقًا ، فاقرأ المقالة المفصلة .
يتم إجراء التعليمات مع أمثلة على CentOS 7.