Divu faktoru autentifikācija OpenVPN ar Telegram robotu

Rakstā aprakstÄ«ta OpenVPN servera iestatīŔana, lai aktivizētu divfaktoru autentifikāciju ar Telegram robotu, kurÅ” nosÅ«tÄ«s apstiprinājuma pieprasÄ«jumu, pieslēdzoties.

OpenVPN ir plaÅ”i pazÄ«stams, bezmaksas VPN serveris ar atvērtu pirmkodu, ko plaÅ”i izmanto, lai nodroÅ”inātu darbinieku droÅ”u piekļuvi organizācijas iekŔējiem resursiem.

Kā autentifikācijas lÄ«dzeklis pieslēgÅ”anai VPN serverim parasti tiek izmantota kombinācija no atslēgas un lietotāja lietotājvārda/paroles. Šādā gadÄ«jumā, klientā saglabātā parole padara visu komplektu par vienu faktoru, kas nenodroÅ”ina nepiecieÅ”amo droŔības lÄ«meni. Ienaidnieks, iegÅ«stot piekļuvi klienta datoram, iegÅ«st arÄ« piekļuvi VPN serverim. ÄŖpaÅ”i tas attiecas uz pieslēgÅ”anos ar Windows darbināmām maŔīnām.

Otrā faktora izmantoÅ”ana par 99% samazina neautorizētas piekļuves risku un pilnÄ«bā nepārslogot procesu lietotājiem.

Uzreiz jāatzÄ«mē, ka Ä«stenoÅ”anai bÅ«s nepiecieÅ”ama savienojuma izveide ar treÅ”o puÅ”u autentifikācijas serveri multifactor.ru, kurā var izmantot bezmaksas tarifu.

Darba princips

  1. OpenVPN izmanto plugin openvpn-plugin-auth-pam autentifikācijas pārbaudei.
  2. Plugins pārbauda lietotāja paroli serverī un pieprasa otro faktoru caur RADIUS protokolu Mūlfaktoru pakalpojuma ietvaros.
  3. Mūlfaktors izmanto Telegram robotu, lai nosūtītu lietotājam apstiprinājuma ziņu par piekļuvi.
  4. Lietotājs apstiprina piekļuves pieprasÄ«jumu Telegram tērzēŔanā un pieslēdzas VPN.

OpenVPN servera uzstādīŔana.

Internetā ir daudz rakstu, kas apraksta OpenVPN uzstādīŔanas un konfigurēŔanas procesu, tāpēc mēs tos nevēlamies dublēt. Ja jums ir nepiecieÅ”ama palÄ«dzÄ«ba, raksta beigās ir norādÄ«tas dažas saites uz apmācÄ«bu materiāliem.

Mūlfaktora konfigurācija.

Piekļūstiet Mūlfaktora pārvaldības sistēma., dodieties uz sadaļu "Resursi" un izveidojiet jaunu VPN.
Pēc izveidoÅ”anas jums bÅ«s pieejami divi parametri: NAS-IDentifier. un Shared Secret., tie bÅ«s nepiecieÅ”ami turpmākai konfigurācijai.

Divu faktoru autentifikācija OpenVPN ar Telegram robotu

Sadaļā "Grupas" dodieties uz grupas "Visi lietotāji" iestatījumiem un noņemiet atzīmi "Visi resursi", lai tikai noteiktas grupas lietotāji varētu pieslēgties VPN serverim.

Izveidojiet jaunu grupu "VPN lietotāji", atslēdziet visus autentifikācijas veidus, izņemot Telegram, un norādiet, ka lietotājiem ir piekļuve izveidotajam VPN resursam.

Divu faktoru autentifikācija OpenVPN ar Telegram robotu

Sadaļā "Lietotāji" izveidojiet lietotājus, kuriem bÅ«s pieeja VPN, pievienojiet tos grupai "VPN lietotāji" un nosÅ«tiet viņiem saiti uz otrā faktora autentifikācijas iestatīŔanu. Lietotāja pieteikÅ”anās jāatbilst pieteikÅ”anās datiem VPN serverÄ«.

Divu faktoru autentifikācija OpenVPN ar Telegram robotu

OpenVPN servera iestatīŔana

Atveriet failu /etc/openvpn/server.conf un pievienojiet paplaŔinājumu autentifikācijai, izmantojot PAM moduli

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

PaplaÅ”inājums var atrasties direktorijā /usr/lib/openvpn/plugins/ vai /usr/lib64/openvpn/plugins/ atkarÄ«bā no jÅ«su sistēmas.

Tālāk nepiecieÅ”ams instalēt pam_radius_auth moduli

$ sudo yum install pam_radius

Atveriet priekÅ” rediģēŔanu failu /etc/pam_radius.conf un norādiet RADIUS servera adresi MÅ«lfaktora

radius.multifactor.ru shared_secret 40

kur:

  • radius.multifactor.ru — servera adrese
  • shared_secret — nokopējiet no attiecÄ«gā VPN iestatÄ«jumu parametra
  • 40 sekundes — izsaukuma gaidīŔanas laiks ar vēlmi

Pārējie serveri jādzēŔ vai jākonfigurē komentārs (priekŔā jāsavieno punkts)

Tālāk izveidojiet failu service-type openvpn

$ sudo vi /etc/pam.d/openvpn

un ierakstiet tajā

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

pirmā rindiņa pieslēdz PAM moduli pam_radius_auth ar parametriem:

  • skip_passwd — izslēdz lietotāja parolē pārraidīŔanu RADIUS serverÄ« MÅ«lfaktoram (tam nav jāzina).
  • client_id — ievietojiet vietā [NAS-Identifier] atbilstoÅ”o parametru no VPN resursu iestatÄ«jumiem.
    Visi iespējami parametri ir aprakstīti moduļa dokumentācijā.

Otrā un treŔā rindiņa iekļauj sistēmas pārbaudi par pieteikÅ”anos, paroli un lietotāja tiesÄ«bām jÅ«su serverÄ« kopā ar otro faktoru autentifikācijai.

Restartējiet OpenVPN

$ sudo systemctl restart openvpn@server

Klienta iestatīŔana

Iekļaujiet klienta konfigurācijas failā lietotāja vārda un paroles pieprasījumu

auth-user-pass

Pārbaude

Palaižiet klientu OpenVPN, pieslēdzieties serverim, norādiet lietotāja vārdu un paroli. No Telegram robota saņemsiet piekļuves pieprasījumu ar divām pogām

Divu faktoru autentifikācija OpenVPN ar Telegram robotu

Viena poga atļauj piekļuvi, otra bloķē.

Tagad varat droÅ”i saglabāt paroli klientā, otrais faktors droÅ”i aizsargās jÅ«su OpenVPN serveri no nesankcionētas piekļuves.

Ja kaut kas nedarbojas

Pakāpeniski pārbaudiet, vai neko neesat aizmirsis:

  • Uz servera ar OpenVPN jābÅ«t lietotājam ar iestatÄ«tu paroli
  • Server access is opened via UDP port 1812 at address radius.multifactor.ru
  • The NAS-Identifier and Shared Secret parameters are correctly specified
  • A user with the same login has been registered in the Multifactor system and granted access to the VPN user group
  • The user has configured the authentication method via Telegram

If you haven't configured OpenVPN before, please read the detailed article.

The instruction is provided with examples on CentOS 7.

Avots: habr.com

Iegādājieties uzticamu tÄ«mekļa hostingu ar DDoS aizsardzÄ«bu, VPS VDS serveriem šŸ”„ Iegādājieties uzticamu tÄ«mekļa hostingu ar DDoS aizsardzÄ«bu, VPS VDS serveriem | ProHoster