ProHoster > Dvojfaktorová autentifikácia v OpenVPN s telegramovým robotom
Dvojfaktorová autentifikácia v OpenVPN s telegramovým robotom
Článok popisuje nastavenie servera OpenVPN na umožnenie dvojfaktorovej autentifikácie pomocou telegramového robota, ktorý pri pripájaní odošle žiadosť o potvrdenie.
OpenVPN je známy, bezplatný server VPN s otvoreným zdrojom, ktorý sa široko používa na organizáciu bezpečného prístupu zamestnancov k interným organizačným zdrojom.
Ako autentifikácia pre pripojenie k serveru VPN sa zvyčajne používa kombinácia kľúča a používateľského prihlasovacieho mena/hesla. Heslo uložené na klientovi zároveň zmení celú súpravu na jediný faktor, ktorý neposkytuje správnu úroveň zabezpečenia. Útočník, ktorý získal prístup ku klientskemu počítaču, získa aj prístup k serveru VPN. To platí najmä pre pripojenia z počítačov so systémom Windows.
Použitie druhého faktora znižuje riziko neoprávneného prístupu o 99 % a užívateľom vôbec nekomplikuje proces pripojenia.
Dovoľte mi ihneď vykonať rezerváciu: na implementáciu budete musieť pripojiť autentifikačný server tretej strany multifactor.ru, v ktorom môžete pre svoje potreby použiť bezplatný tarif.
Princíp činnosti
OpenVPN používa na autentifikáciu doplnok openvpn-plugin-auth-pam
Plugin skontroluje heslo používateľa na serveri a vyžiada si druhý faktor cez protokol RADIUS v službe Multifactor
Multifactor odošle používateľovi správu prostredníctvom telegramového robota potvrdzujúcu prístup
Používateľ potvrdí žiadosť o prístup v telegramovom rozhovore a pripojí sa k sieti VPN
Inštalácia servera OpenVPN
Na internete je veľa článkov popisujúcich proces inštalácie a konfigurácie OpenVPN, takže ich nebudeme duplikovať. Ak potrebujete pomoc, na konci článku je niekoľko odkazov na tutoriály.
Nastavenie multifaktora
Choďte na Viacfaktorový riadiaci systém, prejdite do sekcie „Zdroje“ a vytvorte novú sieť VPN.
Po vytvorení budete mať k dispozícii dve možnosti: NAS identifikátor и Zdieľané tajomstvo, budú potrebné pre následnú konfiguráciu.
V časti „Skupiny“ prejdite do nastavení skupiny „Všetci používatelia“ a odstráňte príznak „Všetky zdroje“, aby sa k serveru VPN mohli pripojiť iba používatelia určitej skupiny.
Vytvorte novú skupinu „Používatelia VPN“, vypnite všetky metódy overenia okrem telegramu a označte, že používatelia majú prístup k vytvorenému prostriedku VPN.
V časti „Používatelia“ vytvorte používateľov, ktorí budú mať prístup k VPN, pridajte ich do skupiny „Používatelia VPN“ a pošlite im odkaz na konfiguráciu druhého faktora overenia. Prihlásenie používateľa sa musí zhodovať s prihlásením na serveri VPN.
Nastavenie servera OpenVPN
Otvorte súbor /etc/openvpn/server.conf a pridajte doplnok na autentifikáciu pomocou modulu PAM
Prvý riadok spája modul PAM pam_radius_auth s parametrami:
skip_passwd - zakáže prenos hesla používateľa na server RADIUS Multifactor (nemusí ho poznať).
client_id — nahraďte [NAS-Identifier] zodpovedajúcim parametrom z nastavení prostriedkov VPN.
Všetky možné parametre sú popísané v dokumentáciu k modulu.
Druhý a tretí riadok obsahuje systémové overenie prihlasovacieho mena, hesla a používateľských práv na vašom serveri spolu s druhým overovacím faktorom.
Reštartujte OpenVPN
$ sudo systemctl restart openvpn@server
Nastavenie klienta
Do konfiguračného súboru klienta zahrňte požiadavku na prihlásenie používateľa a heslo
auth-user-pass
Проверка
Spustite klienta OpenVPN, pripojte sa k serveru, zadajte svoje používateľské meno a heslo. Robot Telegram odošle žiadosť o prístup pomocou dvoch tlačidiel
Jedno tlačidlo prístup umožňuje, druhé blokuje.
Teraz môžete bezpečne uložiť svoje heslo na klientovi; druhý faktor spoľahlivo ochráni váš server OpenVPN pred neoprávneným prístupom.
Ak niečo nefunguje
Postupne skontrolujte, či ste nič nevynechali:
Na serveri je používateľ s OpenVPN s nastaveným heslom
Server má prístup cez UDP port 1812 na adresu radius.multifactor.ru
Parametre NAS-Identifier a Shared Secret sú zadané správne
Používateľ s rovnakým prihlasovacím menom bol vytvorený v systéme Multifactor a bol mu udelený prístup do skupiny používateľov VPN
Používateľ nakonfiguroval spôsob autentifikácie prostredníctvom telegramu
Ak ste OpenVPN ešte nenastavili, prečítajte si podrobný článok.