Kaksifaktoriline autentimine OpenVPN-i ja Telegrami boti kaudu

Artiklis kirjeldatakse OpenVPN serveri seadistamist, et lubada kaksifaktoriline autentimine Telegrami boti kaudu, mis saadab kinnitustoimekonna taotluse ühendamisel.

OpenVPN on laialdaselt tuntud tasuta avatud lähtekoodiga VPN server, mida kasutatakse tõhusalt töötajate kaitstud juurdepääsu korraldamiseks organisatsiooni sisemistele ressurssidele.

VPN serverisse ühendamiseks kasutatakse tavaliselt autentimise kombinatsiooni võtme ja kasutaja kasutajanime/parooli. Samas muudab kliendil salvestatud parool kogu komplekti üheks faktoriks, mis ei paku piisavat turvalisuse taset. Kurjategija, kes pääseb kliendi arvutisse, saab samuti juurdepääsu VPN serverile. See kehtib eriti Windowsi toimivatel masinatel.

Teise teguri kasutamine vähendab 99% ulatuses volitamata juurdepääsu riski ja ei muuda ühenduse loomise protsessi kasutajate jaoks keerulisemaks.

Esiteks peate rakendama kolmanda osapoole autentimise serverit multifactor.ru, kus saate kasutada tasuta plaani.

Töö принцип

  1. OpenVPN kasutab autentimise kontrollimiseks openvpn-plugin-auth-pam pluginit.
  2. Plugin kontrollib kasutaja parooli serveris ja küsib teist tegurit RADIUS protokolli kaudu multifaktori teenuses.
  3. Multifaktor saadab Telegrami boti kaudu kasutajale juurdepääsukinnituse sõnumi.
  4. Kasutaja kinnitab juurdepääsutaotluse Telegrami vestluses ning ühendub VPN-iga.

OpenVPN serveri seadistamine

Interneti avarustes on rohkesti artikleid, mis kirjeldavad OpenVPN-i installimise ja seadistamise protsessi, seega ei kordame neid siin. Kui vajate abi, leiate artikli lõpust mõned lingid õpikutele.

Multifaktori seadistamine

Logige sisse Multifaktori haldussüsteem, minge jaotisse "Ressursid" ja looge uus VPN.
Pärast loomist on teil saadaval kaks parameetrit: NAS-IDentifier ja Shared Secret, neid on vaja edasise seadistamise jaoks.

Kaksifaktoriline autentimine OpenVPN-i ja Telegrami boti kaudu

Jaotises "Rühmad" minge rühma "Kasutajad" seadetesse ja eemaldage lipp "Kõik ressursid", et ainult teatud grupi kasutajad saaksid ühenduda VPN serveriga.

Looge uus rühm "VPN users", keelake kõik autentimisviisid peale Telegrami ja märkige, et kasutajatel on juurdepääs loodud VPN-ressursile.

Kaksifaktoriline autentimine OpenVPN-i ja Telegrami boti kaudu

Jaotises "Kasutajad" looge kasutajad, kellel on pääs VPN-ile, lisage nad rühma "VPN users" ja saatke neile link teise autentimise teguri seadistamiseks. Kasutaja sisselogimise nimi peab olema sama nagu VPN-serveris.

Kaksifaktoriline autentimine OpenVPN-i ja Telegrami boti kaudu

OpenVPN serveri seadistamine

Avage fail /etc/openvpn/server.conf ja lisage PAM-mooduli autentimise plugina

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

Plugin võib olla kausta sees /usr/lib/openvpn/plugins/ või /usr/lib64/openvpn/plugins/ sõltuvalt teie süsteemist.

Seejärel tuleb installida pam_radius_auth moodul

$ sudo yum install pam_radius

Avage redigeerimiseks fail /etc/pam_radius.conf ja märkige mitme teguri RADIUS serveri aadress

radius.multifactor.ru shared_secret 40

kus:

  • radius.multifactor.ru on serveri aadress
  • shared_secret - kopeerige vastav parameeter VPN seadetest
  • 40 sekundit - päringu ooteaeg piisava varuga

Teised serverid tuleb eemaldada või kommenteerida (seada algusesse punkt- ja mooduli märk).

Seejärel looge fail service-type openvpn jaoks

$ sudo vi /etc/pam.d/openvpn

ja kirjutage sinna

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

esimene rida ühendab PAM mooduli pam_radius_auth määratletud parameetritega:

  • skip_passwd - keelab kasutaja parooli edastamise RADIUS serverile (ta ei pea seda teadma).
  • client_id - asetage [NAS-Identifier] asemel vastav parameeter VPN-ressursi seadetest.
    Kõik võimalused on kirjeldatud mooduli dokumentatsioonis.

Teine ja kolmas rida hõlmavad süsteemi sisselogimise, parooli ja kasutaja õiguste kontrollimist teie serveris koos teise autentimise teguriga.

Taaskäivitage OpenVPN

$ sudo systemctl restart openvpn@server

Kliendi seadistamine

Kasutajate sisselogimise ja parooli nõudmine tuleb sisse lülitada kliendi konfiguratsioonifailis

auth-user-pass

Kontrollimine

Käivitage OpenVPN klient, ühendage serveriga, sisestage sisselogimise nimi ja parool. Telegrami botilt tuleb juurdepääsu taotlus kahe nupuga

Kaksifaktoriline autentimine OpenVPN-i ja Telegrami boti kaudu

Üks nupp lubab juurdepääsu, teine blokeerib.

Nii et saate julgelt parooli kliendisse salvestada, teine tegur kaitseb teie OpenVPN serverit volitamata juurdepääsu eest.

Kui midagi ei tööta

Kontrollige järjestikku, et te ei oleks midagi tähelepanuta jätnud:

  • OpenVPN serveris on kasutaja, kellel on kehtiv parool
  • Serveri kaudu on avatud juurdepääs UDP pordile 1812 aadressil radius.multifactor.ru
  • NAS-Identifier ja Shared Secret parameetrid on õigesti määratud
  • Süsteemis Multifactori on registreeritud kasutaja sama logindiga ja talle on antud juurdepääs VPN kasutajate rühmale
  • Kasutaja on seadistanud autentimise meetodi läbi Telegrami

Kui te ei ole varem OpenVPN-i installinud, lugege ulatuslikku artiklit.

Juhend on koostatud CentOS 7 näidete põhjal.

Allikas: habr.com

Osta usaldusväärne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster