Autentificazione à dui fattori in OpenVPN cù u bot Telegram

L'articulu descrive l'installazione di un servitore OpenVPN per attivà l'autentificazione à dui fattori cù un bot Telegram chì mandarà una dumanda di cunferma quandu si cunnetta.

OpenVPN hè un servitore VPN ben cunnisciutu, liberu è open-source chì hè largamente utilizatu per urganizà l'accessu sicuru di l'impiegati à e risorse organizzative interne.

Cum'è l'autentificazione per a cunnessione à un servitore VPN, una cumminazione di una chjave è login / password d'utilizatore hè generalmente utilizata. À u listessu tempu, a password guardata nantu à u cliente trasforma l'inseme sanu in un unicu fattore chì ùn furnisce micca u livellu propiu di sicurità. Un attaccu, avè acquistatu accessu à l'urdinatore di u cliente, hà ancu accessu à u servitore VPN. Questu hè soprattuttu veru per e cunnessione da e macchine chì funzionanu Windows.

Utilizà u sicondu fattore reduce u risicu di accessu micca autorizatu da 99% è ùn complica micca u prucessu di cunnessione per l'utilizatori.

Lasciami fà una riservazione subitu: per l'implementazione avete bisognu di cunnette un servitore di autentificazione di terzu multifactor.ru, in quale pudete aduprà una tarifa gratuita per i vostri bisogni.

Come si travaglia

  1. OpenVPN usa u plugin openvpn-plugin-auth-pam per l'autentificazione
  2. U plugin verifica a password di l'utilizatore nantu à u servitore è dumanda u sicondu fattore via u protocolu RADIUS in u serviziu Multifactor.
  3. Multifactor manda un missaghju à l'utilizatore via Telegram bot cunfirmendu l'accessu
  4. L'utilizatore cunfirma a dumanda d'accessu in u chat di Telegram è si cunnetta à a VPN

Installazione di un servitore OpenVPN

Ci hè parechje articuli in Internet chì descrizanu u prucessu di stallà è cunfigurà OpenVPN, perchè ùn avemu micca duplicà. Sè avete bisognu di aiutu, ci sò parechji ligami per tutoriali à a fine di l'articulu.

Stabbilimentu di u Multifactor

Andà à Sistema di cuntrollu multifattori, andate à a sezione "Risorse" è crea una nova VPN.
Una volta creatu, avete duie opzioni dispunibili per voi: NAS-IDentifier и Secretu Spartutu, seranu richiesti per a cunfigurazione successiva.

Autentificazione à dui fattori in OpenVPN cù u bot Telegram

In a sezione "Gruppi", andate à i paràmetri di u gruppu "Tutti l'utilizatori" è sguassate a bandiera "Tutte i risorse" in modu chì solu l'utilizatori di un certu gruppu ponu cunnette à u servitore VPN.

Crea un novu gruppu "Utenti VPN", disattiveghjanu tutti i metudi di autentificazione eccettu Telegram è indicanu chì l'utilizatori anu accessu à a risorsa VPN creata.

Autentificazione à dui fattori in OpenVPN cù u bot Telegram

In a sezione "Users", crea l'utilizatori chì anu accessu à a VPN, aghjunghje à u gruppu "Users VPN" è li manda un ligame per cunfigurà u sicondu fattore di autentificazione. U login d'utilizatore deve currisponde à u login in u servitore VPN.

Autentificazione à dui fattori in OpenVPN cù u bot Telegram

Configurazione di un servitore OpenVPN

Apertura u fugliale /etc/openvpn/server.conf è aghjunghje un plugin per l'autentificazione cù u modulu PAM

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

U plugin pò esse situatu in u cartulare /usr/lib/openvpn/plugins/ o /usr/lib64/openvpn/plugins/ secondu u vostru sistema.

Dopu avete bisognu di stallà u modulu pam_radius_auth

$ sudo yum install pam_radius

Aprite u schedariu per edità /etc/pam_radius.conf è specificà l'indirizzu di u servitore RADIUS di u Multifactor

radius.multifactor.ru   shared_secret   40

induve:

  • radius.multifactor.ru - indirizzu di u servitore
  • shared_secret - copia da u paràmetru di paràmetru VPN currispundente
  • 40 seconde - timeout per aspittà una dumanda cù un grande margine

I servitori rimanenti devenu esse sguassati o cummentati (mette un puntu e virgola à u principiu)

Dopu, crea un schedariu per openvpn di tipu di serviziu

$ sudo vi /etc/pam.d/openvpn

è scrivila in

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

A prima linea cunnetta u modulu PAM pam_radius_auth cù i paràmetri:

  • skip_passwd - disattiva a trasmissione di a password di l'utilizatore à u servitore RADIUS Multifactor (ùn hà micca bisognu di sapè).
  • client_id - rimpiazzà [NAS-Identifier] cù u paràmetru currispundente da i paràmetri di risorse VPN.
    Tutti i paràmetri pussibuli sò descritti in documentazione per u modulu.

A seconda è a terza linea includenu a verificazione di u sistema di u login, password è diritti d'utilizatore nantu à u vostru servitore cù un secondu fattore di autentificazione.

Riavvia OpenVPN

$ sudo systemctl restart openvpn@server

Configurazione di u cliente

Includite una dumanda di login d'utilizatore è password in u schedariu di cunfigurazione di u cliente

auth-user-pass

pirmittennu

Lanciate u cliente OpenVPN, cunnette à u servitore, inserite u vostru nome d'utilizatore è password. U bot di Telegram riceverà una dumanda d'accessu cù dui buttoni

Autentificazione à dui fattori in OpenVPN cù u bot Telegram

Un buttone permette l'accessu, u sicondu blucca.

Avà pudete salvà in modu sicuru a vostra password in u cliente; u sicondu fattore prutege in modu affidabile u vostru servitore OpenVPN da l'accessu micca autorizatu.

Se qualcosa ùn viaghja micca

Verificate sequenziale chì ùn avete micca mancatu nunda:

  • Ci hè un utilizatore nantu à u servitore cù OpenVPN cù una password stabilita
  • U servitore hà accessu via u portu UDP 1812 à l'indirizzu radius.multifactor.ru
  • I paràmetri NAS-Identifier è Shared Secret sò specificati currettamente
  • Un utilizatore cù u stessu login hè statu creatu in u sistema Multifactor è hè stata cuncessa l'accessu à u gruppu d'utilizatori VPN
  • L'utilizatore hà cunfiguratu u metudu di autentificazione via Telegram

Se ùn avete micca stallatu OpenVPN prima, leghjite articulu detallatu.

L'istruzzioni sò fatti cù esempi nantu à CentOS 7.

Source: www.habr.com

Add a comment