ProHoster > Autentificare cu doi factori în OpenVPN cu botul Telegram
Autentificare cu doi factori în OpenVPN cu botul Telegram
Articolul descrie configurarea unui server OpenVPN pentru a activa autentificarea cu doi factori cu un bot Telegram care va trimite o cerere de confirmare la conectare.
OpenVPN este un server VPN bine-cunoscut, gratuit, open-source, care este utilizat pe scară largă pentru a organiza accesul securizat al angajaților la resursele interne ale organizației.
Ca autentificare pentru conectarea la un server VPN, se folosește de obicei o combinație de cheie și autentificare/parolă de utilizator. În același timp, parola stocată pe client transformă întregul set într-un singur factor care nu oferă nivelul corespunzător de securitate. Un atacator, care a obținut acces la computerul client, obține și acces la serverul VPN. Acest lucru este valabil mai ales pentru conexiunile de la mașini care rulează Windows.
Utilizarea celui de-al doilea factor reduce riscul accesului neautorizat cu 99% și nu complică deloc procesul de conectare pentru utilizatori.
Permiteți-mi să fac o rezervare imediat: pentru implementare va trebui să vă conectați un server de autentificare terță parte multifactor.ru, în care puteți utiliza un tarif gratuit pentru nevoile dvs.
Principiul de funcționare
OpenVPN folosește pluginul openvpn-plugin-auth-pam pentru autentificare
Pluginul verifică parola utilizatorului pe server și solicită al doilea factor prin protocolul RADIUS în serviciul Multifactor
Multifactor trimite utilizatorului un mesaj prin botul Telegram care confirmă accesul
Utilizatorul confirmă cererea de acces în chat-ul Telegram și se conectează la VPN
Instalarea unui server OpenVPN
Există multe articole pe Internet care descriu procesul de instalare și configurare a OpenVPN, așa că nu le vom duplica. Dacă aveți nevoie de ajutor, există mai multe link-uri către tutoriale la sfârșitul articolului.
Configurarea Multifactorului
Mergeți la Sistem de control multifactorial, accesați secțiunea „Resurse” și creați un nou VPN.
Odată creat, veți avea la dispoziție două opțiuni: NAS-IDentifier и Secret împărtășit, vor fi necesare pentru configurarea ulterioară.
În secțiunea „Grupuri”, accesați setările grupului „Toți utilizatorii” și eliminați marcajul „Toate resursele”, astfel încât numai utilizatorii unui anumit grup să se poată conecta la serverul VPN.
Creați un nou grup „Utilizatori VPN”, dezactivați toate metodele de autentificare, cu excepția Telegramului și indicați că utilizatorii au acces la resursa VPN creată.
În secțiunea „Utilizatori”, creați utilizatori care vor avea acces la VPN, adăugați-i la grupul „Utilizatori VPN” și trimiteți-le un link pentru a configura al doilea factor de autentificare. Autentificarea utilizatorului trebuie să se potrivească cu datele de conectare de pe serverul VPN.
Configurarea unui server OpenVPN
Deschideți fișierul /etc/openvpn/server.conf și adăugați un plugin pentru autentificare folosind modulul PAM
Prima linie conectează modulul PAM pam_radius_auth cu parametrii:
skip_passwd - dezactivează transmiterea parolei utilizatorului către serverul RADIUS Multifactor (nu trebuie să o știe).
client_id — înlocuiți [NAS-Identifier] cu parametrul corespunzător din setările de resurse VPN.
Toți parametrii posibili sunt descriși în documentația pentru modul.
Al doilea și al treilea rând includ verificarea sistemului a login-ului, a parolei și a drepturilor de utilizator pe serverul dvs., împreună cu un al doilea factor de autentificare.
Reporniți OpenVPN
$ sudo systemctl restart openvpn@server
Configurarea clientului
Includeți o solicitare pentru autentificarea utilizatorului și parola în fișierul de configurare a clientului
auth-user-pass
Проверка
Lansați clientul OpenVPN, conectați-vă la server, introduceți numele de utilizator și parola. Botul Telegram va trimite o cerere de acces cu două butoane
Un buton permite accesul, al doilea îl blochează.
Acum vă puteți salva în siguranță parola pe client; al doilea factor vă va proteja în mod fiabil serverul OpenVPN de accesul neautorizat.
Dacă ceva nu merge
Verificați succesiv dacă nu ați omis nimic:
Există un utilizator pe server cu OpenVPN cu o parolă setată
Serverul are acces prin portul UDP 1812 la adresa radius.multifactor.ru
Parametrii NAS-Identifier și Shared Secret sunt specificați corect
Un utilizator cu aceeași autentificare a fost creat în sistemul Multifactor și i s-a acordat acces la grupul de utilizatori VPN
Utilizatorul a configurat metoda de autentificare prin Telegram
Dacă nu ați configurat OpenVPN înainte, citiți articol detaliat.
Instrucțiunile sunt făcute cu exemple pe CentOS 7.