ProHoster > Dalawang-factor na pagpapatunay sa OpenVPN gamit ang Telegram bot
Dalawang-factor na pagpapatunay sa OpenVPN gamit ang Telegram bot
Inilalarawan ng artikulo ang pag-set up ng isang OpenVPN server upang paganahin ang dalawang-factor na pagpapatotoo sa isang Telegram bot na magpapadala ng kahilingan sa pagkumpirma kapag kumokonekta.
Ang OpenVPN ay isang kilalang, libre, open-source na VPN server na malawakang ginagamit upang ayusin ang secure na access ng empleyado sa mga panloob na mapagkukunan ng organisasyon.
Bilang authentication para sa pagkonekta sa isang VPN server, karaniwang ginagamit ang kumbinasyon ng isang key at user login/password. Kasabay nito, ang password na nakaimbak sa kliyente ay nagiging isang solong kadahilanan na hindi nagbibigay ng tamang antas ng seguridad. Ang isang attacker, na nakakuha ng access sa client computer, ay nakakakuha din ng access sa VPN server. Ito ay totoo lalo na para sa mga koneksyon mula sa mga makina na nagpapatakbo ng Windows.
Ang paggamit ng pangalawang kadahilanan ay binabawasan ang panganib ng hindi awtorisadong pag-access ng 99% at hindi nagpapalubha sa proseso ng koneksyon para sa mga user.
Hayaan akong gumawa ng reserbasyon kaagad: para sa pagpapatupad kakailanganin mong ikonekta ang isang third-party na server ng pagpapatunay na multifactor.ru, kung saan maaari kang gumamit ng isang libreng taripa para sa iyong mga pangangailangan.
Prinsipyo ng operasyon
Ginagamit ng OpenVPN ang openvpn-plugin-auth-pam plugin para sa pagpapatunay
Sinusuri ng plugin ang password ng gumagamit sa server at hinihiling ang pangalawang kadahilanan sa pamamagitan ng RADIUS protocol sa serbisyo ng Multifactor
Nagpapadala ang Multifactor ng mensahe sa user sa pamamagitan ng Telegram bot na nagkukumpirma ng access
Kinukumpirma ng user ang kahilingan sa pag-access sa Telegram chat at kumokonekta sa VPN
Pag-install ng OpenVPN server
Mayroong maraming mga artikulo sa Internet na naglalarawan sa proseso ng pag-install at pag-configure ng OpenVPN, kaya hindi namin ito duplicate. Kung kailangan mo ng tulong, mayroong ilang mga link sa mga tutorial sa dulo ng artikulo.
Pag-set up ng Multifactor
Pumunta sa Multifactor control system, pumunta sa seksyong "Mga Mapagkukunan" at lumikha ng bagong VPN.
Kapag nagawa na, magkakaroon ka ng dalawang opsyon na magagamit mo: NAS-IDentifier ΠΈ Nakabahaging Lihim, kakailanganin ang mga ito para sa kasunod na pagsasaayos.
Sa seksyong "Mga Grupo," pumunta sa mga setting ng pangkat na "Lahat ng user" at alisin ang flag na "Lahat ng mapagkukunan" upang ang mga user lang ng isang partikular na grupo ang makakakonekta sa VPN server.
Lumikha ng isang bagong pangkat na "mga gumagamit ng VPN", huwag paganahin ang lahat ng mga pamamaraan ng pagpapatunay maliban sa Telegram at ipahiwatig na ang mga gumagamit ay may access sa nilikha na mapagkukunan ng VPN.
Sa seksyong "Mga User," lumikha ng mga user na magkakaroon ng access sa VPN, idagdag sila sa grupong "Mga user ng VPN" at magpadala sa kanila ng link upang i-configure ang pangalawang salik ng pagpapatunay. Ang login ng user ay dapat tumugma sa login sa VPN server.
Pag-set up ng OpenVPN server
Buksan ang file /etc/openvpn/server.conf at magdagdag ng plugin para sa pagpapatunay gamit ang PAM module
Ang unang linya ay nag-uugnay sa PAM module na pam_radius_auth sa mga parameter:
skip_passwd - hindi pinapagana ang pagpapadala ng password ng user sa RADIUS Multifactor server (hindi niya kailangang malaman ito).
client_id β palitan ang [NAS-Identifier] ng kaukulang parameter mula sa mga setting ng mapagkukunan ng VPN.
Ang lahat ng posibleng mga parameter ay inilarawan sa dokumentasyon para sa modyul.
Kasama sa ikalawa at pangatlong linya ang pag-verify ng system ng login, password at mga karapatan ng user sa iyong server kasama ang pangalawang kadahilanan sa pagpapatunay.
I-restart ang OpenVPN
$ sudo systemctl restart openvpn@server
Setup ng kliyente
Isama ang isang kahilingan para sa pag-login at password ng user sa configuration file ng kliyente
auth-user-pass
ΠΡΠΎΠ²Π΅ΡΠΊΠ°
Ilunsad ang OpenVPN client, kumonekta sa server, ipasok ang iyong username at password. Ang Telegram bot ay magpapadala ng kahilingan sa pag-access na may dalawang pindutan
Ang isang pindutan ay nagbibigay-daan sa pag-access, ang pangalawa ay hinaharangan ito.
Ngayon ay maaari mong ligtas na i-save ang iyong password sa kliyente; ang pangalawang kadahilanan ay mapagkakatiwalaang protektahan ang iyong OpenVPN server mula sa hindi awtorisadong pag-access.
Kung ang isang bagay ay hindi gumagana
Suriin nang sunud-sunod na wala kang napalampas:
Mayroong isang user sa server na may OpenVPN na may set ng password
Ang server ay may access sa pamamagitan ng UDP port 1812 sa address na radius.multifactor.ru
Ang mga parameter ng NAS-Identifier at Shared Secret ay tinukoy nang tama
Ang isang user na may parehong pag-login ay ginawa sa Multifactor system at nabigyan ng access sa VPN user group
Na-configure ng user ang paraan ng pagpapatunay sa pamamagitan ng Telegram