Ky artikull përshkruan konfigurimin e serverit OpenVPN për të përfshirë autentikimin me dy faktorë me një bot Telegram, e cila do të dërgojë një kërkesë miratimi gjatë lidhjes.
OpenVPN është një server VPN i njohur gjerësisht, falas dhe me kod të hapur, i cili përdoret panëgjitur për të organizuar qasje të sigurt për punonjësit në burimet e brendshme të organizatës.
Si një metodë verifikimi për lidhjen me serverin VPN, zakonisht përdoret një kombinim i çelësit dhe identifikuesit/faqes. Megjithatë, mënyra se si ruhet fjalëkalimi në klient e kthen gjithashtu këtë kombinim në një faktor të vetëm, i cili nuk siguron nivelin e duhur të sigurisë. Një sulmues që fiton qasje në kompjuterin e klientit, gjithashtu fiton qasje në serverin VPN. Kjo është veçanërisht e vërtetë për lidhjet nga makina të drejtuara nga Windows.
Përdorimi i faktorit të dytë zvogëlon 99% riskun e aksesit të paautorizuar dhe nuk e komplikon procesin e lidhjes për përdoruesit.
Të them se për zbatimin e kësaj kërkohet lidhja me një server të jashtëm të autentikimit multifactor.ru, i cili mund të përdoret falas për qëllimet tuaja.
Parimi i funksionimit
- OpenVPN përdor plugin-in openvpn-plugin-auth-pam për verifikimin e autentikimit.
- Plugin-i verifikon fjalëkalimin e përdoruesit në server dhe kërkon faktorin e dytë përmes protokollit RADIUS në shërbimin e Multi-Faktorit.
- Multi-Faktori dërgon mesazh përdoruesit në Telegram me miratimin për qasje.
- Përdoruesi konfirmon kërkesën e qasjes në bisedën Telegram dhe lidhet me VPN.
Instalimi i serverit OpenVPN.
Në internet ka shumë artikuj që përshkruajnë procesin e instalimit dhe konfigurimit të OpenVPN, prandaj ne nuk do t'i ripërsërisim ata. Nëse keni nevojë për ndihmë, në fund të artikullit ka disa lidhje për materiale edukative.
Konfigurimi i Multi-Faktorit.
Hyni në , hyni në seksionin "Burimet" dhe krijoni një VPN të re.
Pas krijimit do t'ju jenë të disponueshme dy parametra: NAS-IDentifier. dhe Shared Secret., ata do të nevojiten për konfigurimin e mëpasshëm.

Në seksionin "Grupet", hyni në parametrat e grupit "Të gjithë përdoruesit" dhe hiqni flamurin "Të gjitha burimet", në mënyrë që vetëm përdoruesit e një grupi të caktuar të mund të lidhen me serverin VPN.
Krijoni një grup të ri "VPN users", çaktivizoni të gjitha metodat e autentikimit përveç Telegram dhe përcaktoni që përdoruesit kanë qasje në burimin e krijuar VPN.

Në seksionin "Përdorues" krijoni përdoruesit që do të kenë qasje në VPN, shtoni në grupin "VPN users" dhe dërgoni atyre një lidhje për të konfiguruar faktorët e dytë të autentikimit. Emri i përdoruesit duhet të korrespondon me emrin në serverin VPN.

Konfigurimi i serverit OpenVPN
Hapni skedarin /etc/openvpn/server.conf dhe shtoni një plugin për autentifikimin me modulin PAM
plugin /usr/lib64/openvpn/plugins/openvpn-plugin-auth-pam.so openvpnPlugin mund të jetë në direktorinë /usr/lib/openvpn/plugins/ ose /usr/lib64/openvpn/plugins/ varësisht nga sistemi juaj.
Më pas është e nevojshme të instaloni modulin pam_radius_auth
$ sudo yum install pam_radiusHapni për editimin e skedës /etc/pam_radius.conf dhe specifikoni adresën e serverit RADIUS Multefaktor
radius.multifactor.ru shared_secret 40ku:
- radius.multifactor.ru është adresa e serverit
- shared_secret â kopjoni nga parametri pĂ«rkatĂ«s i cilĂ«simeve tĂ« VPN
- 40 sekonda â Ă«shtĂ« koha e pritjes pĂ«r kĂ«rkesĂ«n me njĂ« mbulesĂ« tĂ« madhe
Serverat e tjerë duhet të fshihen ose të komenton (vendosni një pikë në fillim të nëntë të pikës)
Më pas krijoni një skedë për llojin e shërbimit openvpn
$ sudo vi /etc/pam.d/openvpndhe shkruani në të
auth required pam_radius_auth.so skip_passwd client_id=[NAS-IDentifier]
auth substack password-auth
account substack password-authvija e parë lidh PAM modulin pam_radius_auth me parametrat:
- skip_passwd â çaktivizon dĂ«rgimin nĂ« serverin RADIUS Multefaktor tĂ« fjalĂ«kalimit tĂ« pĂ«rdoruesit (nuk ka nevojĂ« ta dijĂ« atĂ«).
- client_id â vendosni nĂ« vend tĂ« [NAS-Identifier] parametrin pĂ«rkatĂ«s nga cilĂ«simet e burimit tĂ« VPN.
Të gjitha parametrat e mundshëm janë përshkruar në .
Vija e dytë dhe e tretë përfshijnë kontrollin sistemik të emrit të përdoruesit, fjalëkalimit dhe të drejtave të përdoruesit në serverin tuaj së bashku me faktorët e dytë të autentikimit.
Rivendosni OpenVPN
$ sudo systemctl restart openvpn@serverKonfigurimi i klientit
Aktivizoni në skedën e konfigurimit të klientit kërkesën për emrin e përdoruesit dhe fjalëkalimin
auth-user-passKontrolli
Nisni klientin për OpenVPN, lidhuni me serverin, specifikoni emrin e përdoruesit dhe fjalëkalimin. Nga boti i Telegram-it do të vijë një kërkesë për akses me dy butona

Një buton lejon aksesin, tjetri e bllokon.
Tani mund të ruani me besim fjalëkalimin në klient, faktorët e dytë do ta mbrojnë në mënyrë të sigurt serverin tuaj OpenVPN nga akseset e paautorizuara.
Nëse diçka nuk funksionon
Kontrolloni me radhë se nuk keni lënë asgjë pas dore:
- Në serverin me OpenVPN ka një përdorues me fjalëkalim të instaluar
- Server access is open via UDP port 1812 at address radius.multifactor.ru
- The NAS-Identifier and Shared Secret parameters are specified correctly
- A user with the same login is registered in the Multifactor system and has been granted access to the VPN user group
- The user has configured the authentication method through Telegram
If you have not previously set up OpenVPN, please read .
The guide includes examples on CentOS 7.
Burimi: habr.com
