Dufaktora aŭtentigo en OpenVPN kun Telegram-bot

La artikolo priskribas agordi OpenVPN-servilon por ebligi dufaktoran aŭtentikigon per Telegram-robotisto, kiu sendos konfirman peton dum la konekto.

OpenVPN estas konata, senpaga, malfermfonta VPN-servilo, kiu estas vaste uzata por organizi sekuran dungitan aliron al internaj organizaj rimedoj.

Kiel aŭtentigo por konektiĝi al VPN-servilo, kombinaĵo de ŝlosilo kaj uzantsaluto/pasvorto estas kutime uzata. Samtempe, la pasvorto stokita sur la kliento igas la tutan aron en ununuran faktoron, kiu ne provizas la taŭgan nivelon de sekureco. Atakanto, akirinte aliron al klienta komputilo, ankaŭ akiras aliron al la VPN-servilo. Ĉi tio validas precipe por konektoj de maŝinoj kurantaj Vindozon.

Uzado de la dua faktoro reduktas la riskon de neaŭtorizita aliro je 99% kaj tute ne malfaciligas la konektan procezon por uzantoj.

Lasu min fari rezervon tuj: por efektivigo vi devos konekti trian aŭtentikan servilon multifactor.ru, en kiu vi povas uzi senpagan tarifon por viaj bezonoj.

Kiel ĝi funkcias

  1. OpenVPN uzas la aldonaĵon openvpn-plugin-auth-pam por aŭtentigo
  2. La kromaĵo kontrolas la pasvorton de la uzanto sur la servilo kaj petas la duan faktoron per la RADIUS-protokolo en la Multifactor-servo
  3. Multifactor sendas mesaĝon al la uzanto per Telegram-bot konfirmante aliron
  4. La uzanto konfirmas la alirpeton en Telegram-babilejo kaj konektas al la VPN

Instalante OpenVPN-servilon

Estas multaj artikoloj en la Interreto priskribanta la procezon de instalado kaj agordo de OpenVPN, do ni ne duobligos ilin. Se vi bezonas helpon, estas pluraj ligiloj al lerniloj ĉe la fino de la artikolo.

Agordo de la Multifaktoro

Iru al Multifaktora kontrolsistemo, iru al la sekcio "Rimedoj" kaj kreu novan VPN.
Fojo kreita, vi havos du eblojn disponeblajn al vi: NAS-identigilo и Komuna Sekreto, ili estos postulataj por posta agordo.

Dufaktora aŭtentigo en OpenVPN kun Telegram-bot

En la sekcio "Grupoj", iru al la grupaj agordoj "Ĉiuj uzantoj" kaj forigu la flagon "Ĉiuj rimedoj" por ke nur uzantoj de certa grupo povu konektiĝi al la VPN-servilo.

Kreu novan grupon "VPN-uzantoj", malŝaltu ĉiujn aŭtentigajn metodojn krom Telegramo kaj indiku, ke uzantoj havas aliron al la kreita VPN-rimedo.

Dufaktora aŭtentigo en OpenVPN kun Telegram-bot

En la sekcio "Uzantoj", kreu uzantojn, kiuj havos aliron al la VPN, aldonu ilin al la grupo "VPN-uzantoj" kaj sendu al ili ligilon por agordi la duan faktoron de aŭtentigo. La uzantsaluto devas kongrui kun la ensaluto sur la VPN-servilo.

Dufaktora aŭtentigo en OpenVPN kun Telegram-bot

Agordante OpenVPN-servilon

Malfermu la dosieron /etc/openvpn/server.conf kaj aldonu kromprogramon por aŭtentigo uzante la PAM-modulon

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

La kromaĵo troviĝas en la dosierujo /usr/lib/openvpn/plugins//usr/lib64/openvpn/plugins/ depende de via sistemo.

Poste vi devas instali la modulon pam_radius_auth

$ sudo yum install pam_radius

Malfermu la dosieron por redakti /etc/pam_radius.conf kaj specifu la adreson de la RADIUS-servilo de la Multifaktoro

radius.multifactor.ru   shared_secret   40

kie:

  • radius.multifactor.ru — servila adreso
  • shared_secret - kopiu de la responda VPN-agorda parametro
  • 40 sekundoj - tempodaŭro por atendado de peto kun granda marĝeno

La ceteraj serviloj devas esti forigitaj aŭ komentitaj (metu punktokomon ĉe la komenco)

Poste, kreu dosieron por servo-tipo openvpn

$ sudo vi /etc/pam.d/openvpn

kaj skribu ĝin

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

La unua linio ligas la PAM-modulon pam_radius_auth kun la parametroj:

  • skip_passwd - malebligas transdonon de la pasvorto de la uzanto al la RADIUS Multifactor-servilo (li ne bezonas scii ĝin).
  • client_id — anstataŭigu [NAS-Identigilo] per la responda parametro de la VPN-rimeda agordo.
    Ĉiuj eblaj parametroj estas priskribitaj en dokumentado por la modulo.

La dua kaj tria linioj inkluzivas sisteman konfirmon de la ensaluto, pasvorto kaj uzantrajtoj sur via servilo kune kun dua aŭtentikiga faktoro.

Rekomencu OpenVPN

$ sudo systemctl restart openvpn@server

Klienta agordo

Enmetu peton pri uzantsaluto kaj pasvorto en la klienta agorda dosiero

auth-user-pass

inspektado

Lanĉu la OpenVPN-klienton, konektu al la servilo, enigu vian uzantnomon kaj pasvorton. La Telegram-bot sendos alirpeton kun du butonoj

Dufaktora aŭtentigo en OpenVPN kun Telegram-bot

Unu butono permesas aliron, la dua blokas ĝin.

Nun vi povas sekure konservi vian pasvorton ĉe la kliento; la dua faktoro fidinde protektos vian OpenVPN-servilon kontraŭ neaŭtorizita aliro.

Se io ne funkcias

Sinsekve kontrolu, ke vi nenion maltrafis:

  • Estas uzanto sur la servilo kun OpenVPN kun pasvorta fiksita
  • La servilo havas aliron per UDP-haveno 1812 al la adreso radius.multifactor.ru
  • La NAS-Identigilo kaj Kundividita Sekreta parametroj estas precizigitaj ĝuste
  • Uzanto kun la sama ensaluto estis kreita en la Multifactor-sistemo kaj ricevis aliron al la VPN-uzantgrupo
  • La uzanto agordis la aŭtentikigmetodon per Telegramo

Se vi ne agordis OpenVPN antaŭe, legu detala artikolo.

La instrukcioj estas faritaj kun ekzemploj pri CentOS 7.

fonto: www.habr.com

Aldoni komenton