ProHoster > Dvofaktorska autentifikacija u OpenVPN-u s Telegram botom
Dvofaktorska autentifikacija u OpenVPN-u s Telegram botom
Članak opisuje postavljanje OpenVPN poslužitelja za omogućavanje dvofaktorske autentifikacije s Telegram botom koji će poslati zahtjev za potvrdu prilikom povezivanja.
OpenVPN je dobro poznati, besplatni VPN poslužitelj otvorenog koda koji se široko koristi za organiziranje sigurnog pristupa zaposlenika internim organizacijskim resursima.
Kao autentifikacija za spajanje na VPN poslužitelj obično se koristi kombinacija ključa i korisničke prijave/lozinke. Istodobno, lozinka pohranjena na klijentu pretvara cijeli skup u jedan faktor koji ne pruža odgovarajuću razinu sigurnosti. Napadač, nakon što je dobio pristup klijentskom računalu, također dobiva pristup VPN poslužitelju. Ovo posebno vrijedi za veze sa strojeva koji rade pod Windowsima.
Korištenje drugog faktora smanjuje rizik od neovlaštenog pristupa za 99% i uopće ne komplicira proces povezivanja za korisnike.
Dopustite mi da odmah rezerviram: za implementaciju ćete morati povezati poslužitelj za autentifikaciju treće strane multifactor.ru, u kojem možete koristiti besplatnu tarifu za svoje potrebe.
Princip rada
OpenVPN koristi dodatak openvpn-plugin-auth-pam za autentifikaciju
Dodatak provjerava lozinku korisnika na poslužitelju i traži drugi faktor putem RADIUS protokola u Multifactor servisu
Multifactor korisniku putem Telegram bota šalje poruku kojom potvrđuje pristup
Korisnik potvrđuje zahtjev za pristup u Telegram chatu i spaja se na VPN
Instalacija OpenVPN poslužitelja
Na internetu postoji mnogo članaka koji opisuju postupak instaliranja i konfiguriranja OpenVPN-a, pa ih nećemo duplicirati. Ako trebate pomoć, na kraju članka nalazi se nekoliko poveznica na upute.
Postavljanje Multifactora
Idi na Višefaktorski sustav upravljanja, idite na odjeljak "Resursi" i izradite novi VPN.
Nakon izrade, imat ćete dvije dostupne opcije: NAS-IDentifier и Zajednička tajna, oni će biti potrebni za naknadnu konfiguraciju.
U odjeljku "Grupe" idite na postavke grupe "Svi korisnici" i uklonite oznaku "Svi resursi" tako da se samo korisnici određene grupe mogu spojiti na VPN poslužitelj.
Napravite novu grupu "VPN korisnici", onemogućite sve metode provjere autentičnosti osim Telegrama i označite da korisnici imaju pristup stvorenom VPN resursu.
U odjeljku "Korisnici" kreirajte korisnike koji će imati pristup VPN-u, dodajte ih u grupu "VPN korisnici" i pošaljite im poveznicu za konfiguraciju drugog faktora autentifikacije. Korisnička prijava mora odgovarati prijavi na VPN poslužitelju.
Postavljanje OpenVPN poslužitelja
Otvorite datoteku /etc/openvpn/server.conf i dodajte dodatak za autentifikaciju pomoću PAM modula
Prva linija povezuje PAM modul pam_radius_auth s parametrima:
skip_passwd - onemogućuje prijenos korisničke lozinke RADIUS Multifactor poslužitelju (ne mora je znati).
client_id — zamijenite [NAS-Identifier] s odgovarajućim parametrom iz postavki VPN resursa.
Svi mogući parametri opisani su u dokumentaciju za modul.
Drugi i treći red uključuju provjeru sustava za prijavu, lozinku i korisnička prava na vašem poslužitelju zajedno s drugim faktorom provjere autentičnosti.
Ponovno pokrenite OpenVPN
$ sudo systemctl restart openvpn@server
Postavljanje klijenta
Uključite zahtjev za korisničku prijavu i lozinku u konfiguracijsku datoteku klijenta
auth-user-pass
Проверка
Pokrenite OpenVPN klijent, spojite se na poslužitelj, unesite svoje korisničko ime i lozinku. Telegram bot će poslati zahtjev za pristup s dva gumba
Jedan gumb omogućuje pristup, drugi ga blokira.
Sada možete sigurno spremiti svoju lozinku na klijentu; drugi faktor će pouzdano zaštititi vaš OpenVPN poslužitelj od neovlaštenog pristupa.
Ako nešto ne uspije
Redom provjerite da niste ništa propustili:
Na poslužitelju postoji korisnik s OpenVPN-om s postavljenom lozinkom
Poslužitelj ima pristup preko UDP porta 1812 na adresu radius.multifactor.ru
Parametri NAS-Identifier i Shared Secret ispravno su navedeni
U sustavu Multifactor kreiran je korisnik s istom prijavom i dobio je pristup VPN korisničkoj grupi
Korisnik je konfigurirao metodu autentifikacije putem Telegrama
Ako dosad niste postavili OpenVPN, pročitajte detaljan članak.