ProHoster > Kéttényezős hitelesítés az OpenVPN-ben Telegram bottal
Kéttényezős hitelesítés az OpenVPN-ben Telegram bottal
A cikk leírja egy OpenVPN-kiszolgáló beállítását, amely lehetővé teszi a kétfaktoros hitelesítést egy Telegram bottal, amely megerősítési kérést küld a csatlakozáskor.
Az OpenVPN egy jól ismert, ingyenes, nyílt forráskódú VPN-kiszolgáló, amelyet széles körben használnak az alkalmazottak belső szervezeti erőforrásokhoz való biztonságos hozzáférésének megszervezésére.
A VPN-kiszolgálóhoz való csatlakozás hitelesítéseként általában a kulcs és a felhasználói bejelentkezés/jelszó kombinációját használják. Ugyanakkor a kliensen tárolt jelszó a teljes készletet egyetlen tényezővé alakítja, amely nem biztosítja a megfelelő biztonsági szintet. A támadó, miután hozzáfért egy ügyfélszámítógéphez, hozzáfér a VPN-kiszolgálóhoz is. Ez különösen igaz a Windowst futtató gépekről érkező kapcsolatokra.
A második tényező alkalmazása 99%-kal csökkenti az illetéktelen hozzáférés kockázatát, és egyáltalán nem bonyolítja a csatlakozási folyamatot a felhasználók számára.
Hadd tegyek azonnali foglalást: a megvalósításhoz csatlakoztatnia kell egy harmadik féltől származó hitelesítési szervert, a multifactor.ru-t, amelyben ingyenes tarifát használhat az Ön igényeinek megfelelően.
Működési elv
Az OpenVPN az openvpn-plugin-auth-pam beépülő modult használja a hitelesítéshez
A beépülő modul ellenőrzi a felhasználó jelszavát a szerveren, és a második tényezőt kéri a RADIUS protokollon keresztül a Multifactor szolgáltatásban
A Multifactor üzenetet küld a felhasználónak a Telegram bot segítségével, megerősítve a hozzáférést
A felhasználó megerősíti a hozzáférési kérelmet a Telegram chatben, és csatlakozik a VPN-hez
OpenVPN szerver telepítése
Az interneten számos cikk található, amely leírja az OpenVPN telepítésének és konfigurálásának folyamatát, ezért nem fogjuk megkettőzni őket. Ha segítségre van szüksége, a cikk végén számos link található az oktatóanyagokhoz.
A multifaktor beállítása
Menj ide Többtényezős vezérlőrendszer, lépjen az „Erőforrások” szakaszba, és hozzon létre egy új VPN-t.
Miután létrehozta, két lehetőség áll rendelkezésére: NAS-azonosító и Közös titok, szükség lesz rájuk a későbbi konfigurációhoz.
A "Csoportok" részben lépjen az "Összes felhasználó" csoportbeállításokhoz, és távolítsa el az "Összes erőforrás" jelzőt, hogy csak egy bizonyos csoport felhasználói csatlakozhassanak a VPN-kiszolgálóhoz.
Hozzon létre egy új „VPN-felhasználók” csoportot, tiltsa le az összes hitelesítési módot, kivéve a Telegramot, és jelezze, hogy a felhasználók hozzáférhetnek a létrehozott VPN-erőforráshoz.
A „Felhasználók” részben hozzon létre felhasználókat, akik hozzáférhetnek a VPN-hez, adja hozzá őket a „VPN-felhasználók” csoporthoz, és küldjön nekik egy hivatkozást a hitelesítés második tényezőjének konfigurálásához. A felhasználói bejelentkezési adatoknak meg kell egyeznie a VPN-kiszolgálón lévő bejelentkezési adatokkal.
OpenVPN szerver beállítása
Nyissa meg a fájlt /etc/openvpn/server.conf és adjunk hozzá egy bővítményt a PAM-modul segítségével történő hitelesítéshez
Az első sor összekapcsolja a pam_radius_auth PAM modult a következő paraméterekkel:
skip_passwd – letiltja a felhasználó jelszavának átvitelét a RADIUS Multifactor szerverre (nem kell tudnia).
client_id — cserélje ki a [NAS-Identifier]-t a VPN-erőforrás-beállítások megfelelő paraméterére.
Az összes lehetséges paraméter leírása a a modul dokumentációja.
A második és harmadik sor tartalmazza a bejelentkezési adatok, a jelszó és a felhasználói jogok rendszerellenőrzését a szerveren, valamint egy második hitelesítési tényezőt.
Indítsa újra az OpenVPN-t
$ sudo systemctl restart openvpn@server
Kliens beállítása
A kliens konfigurációs fájljában szerepeltessen egy felhasználói bejelentkezési és jelszókérést
auth-user-pass
Проверка
Indítsa el az OpenVPN klienst, csatlakozzon a szerverhez, adja meg felhasználónevét és jelszavát. A Telegram bot hozzáférési kérelmet küld két gombbal
Az egyik gomb lehetővé teszi a hozzáférést, a második blokkolja.
Most már biztonságosan mentheti jelszavát az ügyfélen; a második tényező megbízhatóan megvédi OpenVPN-kiszolgálóját az illetéktelen hozzáféréstől.
Ha valami nem működik
Egymás után ellenőrizze, hogy nem hagyott-e ki semmit:
Van egy felhasználó a szerveren OpenVPN-nel, és jelszó be van állítva
A szerver az 1812-es UDP-porton keresztül hozzáfér a radius.multifactor.ru címhez
A NAS-Identifier és Shared Secret paraméterek megfelelően vannak megadva
A Multifactor rendszerben létrejött egy felhasználó azonos bejelentkezési névvel, és hozzáférést kapott a VPN felhasználói csoporthoz
A felhasználó Telegramon keresztül konfigurálta a hitelesítési módot
Ha még nem állította be az OpenVPN-t, olvassa el bővített cikk.
Az utasítások példákkal készültek a CentOS 7 rendszeren.