Duha ka hinungdan nga panghimatuud sa OpenVPN nga adunay Telegram bot

Gihubit sa artikulo ang pag-set up sa usa ka OpenVPN server aron mahimo ang two-factor authentication gamit ang Telegram bot nga magpadala usa ka hangyo sa kumpirmasyon kung magkonektar.

Ang OpenVPN usa ka ilado, libre, open-source nga VPN server nga kaylap nga gigamit sa pag-organisar sa luwas nga pag-access sa empleyado sa internal nga mga kapanguhaan sa organisasyon.

Isip authentication sa pagkonektar sa VPN server, kasagarang gigamit ang kombinasyon sa yawe ug user login/password. Sa parehas nga oras, ang password nga gitipigan sa kliyente naghimo sa tibuuk nga set sa usa ka hinungdan nga wala maghatag sa husto nga lebel sa seguridad. Ang usa ka tig-atake, nga naka-access sa kompyuter sa kliyente, nakakuha usab og access sa VPN server. Tinuod kini ilabi na sa mga koneksyon gikan sa mga makina nga nagpadagan sa Windows.

Ang paggamit sa ikaduha nga hinungdan makapamenos sa risgo sa dili awtorisado nga pag-access sa 99% ug dili makakomplikado sa proseso sa koneksyon alang sa mga tiggamit.

Tugoti ako nga maghimo dayon og reserbasyon: alang sa pagpatuman kinahanglan nimo nga magkonektar sa usa ka third-party authentication server multifactor.ru, diin mahimo nimong gamiton ang usa ka libre nga taripa alang sa imong mga panginahanglan.

Kon sa unsang paagi kini nga mga buhat

  1. Gigamit sa OpenVPN ang openvpn-plugin-auth-pam plugin para sa pag-authenticate
  2. Gisusi sa plugin ang password sa user sa server ug gihangyo ang ikaduhang hinungdan pinaagi sa RADIUS protocol sa serbisyo sa Multifactor
  3. Ang Multifactor nagpadala usa ka mensahe sa tiggamit pinaagi sa Telegram bot nga nagpamatuod sa pag-access
  4. Gikumpirma sa user ang hangyo sa pag-access sa Telegram chat ug nagkonektar sa VPN

Pag-instalar sa usa ka OpenVPN server

Adunay daghang mga artikulo sa Internet nga naghulagway sa proseso sa pag-instalar ug pag-configure sa OpenVPN, mao nga dili namo kini doblehon. Kung kinahanglan nimo ang tabang, adunay daghang mga link sa mga tutorial sa katapusan sa artikulo.

Pag-set up sa Multifactor

Adto sa Multifactor nga sistema sa pagkontrol, adto sa seksyon nga "Resources" ug paghimo og bag-ong VPN.
Kung nahimo na, aduna kay duha ka opsyon nga magamit nimo: NAS-Identifier ΠΈ Gipaambit nga Sekreto, kinahanglan sila alang sa sunod nga pag-configure.

Duha ka hinungdan nga panghimatuud sa OpenVPN nga adunay Telegram bot

Sa seksyon nga "Mga Grupo", adto sa mga setting sa grupo nga "Tanan nga tiggamit" ug kuhaa ang bandila nga "Tanan nga kahinguhaan" aron ang mga tiggamit lamang sa usa ka grupo ang makakonekta sa VPN server.

Paghimo usa ka bag-ong grupo nga "mga tiggamit sa VPN", pag-disable ang tanan nga mga pamaagi sa pag-authenticate gawas sa Telegram ug ipakita nga ang mga tiggamit adunay access sa gihimo nga kapanguhaan sa VPN.

Duha ka hinungdan nga panghimatuud sa OpenVPN nga adunay Telegram bot

Sa seksyon nga "Mga Gumagamit", paghimo og mga tiggamit nga adunay access sa VPN, idugang sila sa grupo nga "mga tiggamit sa VPN" ug ipadala sila usa ka link aron ma-configure ang ikaduha nga hinungdan sa pag-authenticate. Ang pag-login sa gumagamit kinahanglan nga motakdo sa pag-login sa VPN server.

Duha ka hinungdan nga panghimatuud sa OpenVPN nga adunay Telegram bot

Pag-set up sa usa ka OpenVPN server

Ablihi ang file /etc/openvpn/server.conf ug pagdugang ug plugin para sa pag-authenticate gamit ang PAM module

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

Ang plugin mahimong makit-an sa direktoryo /usr/lib/openvpn/plugins/ o /usr/lib64/openvpn/plugins/ depende sa imong system.

Sunod kinahanglan nimo nga i-install ang pam_radius_auth module

$ sudo yum install pam_radius

Ablihi ang file para sa pag-edit /etc/pam_radius.conf ug ipiho ang adres sa RADIUS server sa Multifactor

radius.multifactor.ru   shared_secret   40

diin:

  • radius.multifactor.ru β€” adres sa server
  • shared_secret - kopya gikan sa katugbang nga parameter sa setting sa VPN
  • 40 segundos - timeout alang sa paghulat sa usa ka hangyo nga adunay dako nga margin

Ang nahabilin nga mga server kinahanglan nga tangtangon o i-comment out (butangan og semicolon sa sinugdanan)

Sunod, paghimo og file para sa service-type nga openvpn

$ sudo vi /etc/pam.d/openvpn

ug isulat kini sa

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

Ang unang linya nagkonektar sa PAM module pam_radius_auth sa mga parameter:

  • skip_passwd - disable ang transmission sa password sa user ngadto sa RADIUS Multifactor server (dili niya kinahanglan nga mahibal-an kini).
  • client_id β€” ilisan ang [NAS-Identifier] sa katugbang nga parametro gikan sa VPN resource settings.
    Ang tanan nga posible nga mga parameter gihulagway sa dokumentasyon para sa module.

Ang ikaduha ug ikatulo nga linya naglakip sa pag-verify sa sistema sa pag-login, password ug mga katungod sa gumagamit sa imong server kauban ang ikaduha nga hinungdan sa pag-authenticate.

I-restart ang OpenVPN

$ sudo systemctl restart openvpn@server

Pag-setup sa kliyente

Ilakip ang usa ka hangyo alang sa pag-login sa user ug password sa file sa configuration sa kliyente

auth-user-pass

inspection

Ilunsad ang kliyente sa OpenVPN, kumonekta sa server, isulod ang imong username ug password. Ang Telegram bot magpadala usa ka hangyo sa pag-access nga adunay duha ka buton

Duha ka hinungdan nga panghimatuud sa OpenVPN nga adunay Telegram bot

Ang usa ka buton nagtugot sa pag-access, ang ikaduha nag-block niini.

Karon mahimo nimong luwas nga i-save ang imong password sa kliyente; ang ikaduha nga hinungdan masaligan nga mapanalipdan ang imong OpenVPN server gikan sa dili awtorisado nga pag-access.

Kung adunay dili molihok

Sunod-sunod nga susiha nga wala ka nasipyat bisan unsa:

  • Adunay usa ka tiggamit sa server nga adunay OpenVPN nga adunay set sa password
  • Ang server adunay access pinaagi sa UDP port 1812 ngadto sa address radius.multifactor.ru
  • Ang NAS-Identifier ug Shared Secret nga mga parameter gipiho sa husto
  • Ang usa ka tiggamit nga adunay parehas nga pag-login nahimo sa sistema sa Multifactor ug gihatagan og access sa grupo sa tiggamit sa VPN
  • Gi-configure sa user ang pamaagi sa pag-authenticate pinaagi sa Telegram

Kung wala ka pa naka-set up sa OpenVPN kaniadto, basaha detalyado nga artikulo.

Ang mga panudlo gihimo uban ang mga pananglitan sa CentOS 7.

Source: www.habr.com

Idugang sa usa ka comment