La A kétfaktoros hitelesítés (2FA) nem egyedülálló, amelyet fel lehet használni a közösségi médiában vagy bármely más weboldalon. Nos, ez a biztonsági intézkedés operációs rendszeren belül is megvalósítható.
Ezért Ma meglátjuk, hogyan lehet a kétfaktoros hitelesítést megvalósítani az SSH-ban az Ubuntuban és derivatívák a jól ismert Google Authenticator segítségével, amely jelentősen növeli az OpenSSH-kiszolgáló biztonságát.
Normál esetben csak be kell írnia egy jelszót, vagy az SSH kulcs segítségével kell bejelentkeznie a rendszerbe távolról.
A kétfaktoros hitelesítéshez (2FA) két információt kell megadni a bejelentkezéshez.
Ezért az SSH-kiszolgálóra való bejelentkezéshez időalapú egyszeri jelszót is meg kell adnia.
Ezt az egyszeri jelszót a TOTP algoritmus segítségével számítják ki, amely egy IETF szabvány.
A Google Authenticator telepítése és konfigurálása az Ubuntuban és a származékaiban
Az első lépés, amelyet végrehajtani fogunk, a Google Authenticator telepítése a rendszerünkbe, ezért meg fogunk nyitni egy terminált a rendszerben (ezt megtehetjük a „Ctrl + Alt + T billentyűkombinációval), és beírjuk a következő parancsot:
sudo apt install libpam-google-authenticator
A telepítés kész az újonnan telepített alkalmazást a következő paranccsal fogjuk futtatni:
google-authenticator
A parancs végrehajtásakor titkos kulcsot rendelünk hozzá, és ez megkérdezi tőlünk, hogy az idő alapján akarjuk-e használni a tokeneket, amelyekre igennel válaszolunk.
Ezt követően, meglátnak egy QR-kódot, amelyet beolvashatnak a telefonjukon található TOTP alkalmazás segítségével.
Itt Javasoljuk, hogy használja a Google Authenticator alkalmazást mobiltelefonján.il, így telepítheti az alkalmazást a mobiltelefonjára a Google Play vagy az Apple App Store segítségével.
Már rendelkezik az alkalmazással a telefonján, be kell olvasnia vele a QR-kódot. Ne feledje, hogy a teljes QR-kód beolvasásához meg kell nagyítania a terminál ablakát.
A QR-kód a titkos kulcsot jelenti, amelyet csak az SSH szervere és a Google Authenticator alkalmazás ismer.
A QR-kód beolvasása után egyedülálló hatjegyű tokent láthatnak a telefonjukon. Alapértelmezés szerint ez a token 30 másodpercig tart, és meg kell adni, hogy SSH-n keresztül beléphessen az Ubuntu-ba.
A terminálban megtekintheti a titkos kódot, valamint az ellenőrző kódot és a vészhelyzeti start kódot is.
Amitől azt javasoljuk, hogy ezt az információt tárolja biztonságos helyen későbbi felhasználás céljából. A többi feltett kérdés közül egyszerűen igennel válaszolunk az y betű beírásával.
SSH-konfiguráció a Google Authenticator használatához
Már számítok a fentiekre, Most elvégezzük a szükséges konfigurációt ahhoz, hogy a rendszerünkben az SSH-kapcsolatot a Google Authenticator segítségével tudjuk használni.
A v. TerminálbanGépelni fogjuk a következő parancsot
sudo nano /etc/ssh/sshd_config
A fájlban a következő sorokat keressük, és ezeket "igen" -re változtatjuk, a következők szerint:
UsePAM yes ChallengeResponseAuthentication yes
A módosítások elvégzése után mentse el a Ctrl + O billentyűkombinációval végrehajtott módosításokat, és zárja be a fájlt a Ctrl + X billentyűkombinációval.
Ugyanabban a terminálban újraindítjuk az SSH-t:
sudo systemctl restart ssh
Alapértelmezés szerint a hitelesítéshez meg kell adni a felhasználói jelszót a bejelentkezéshez.
Miért szerkesszük az SSH démon PAM szabályok fájlját.
sudo nano /etc/pam.d/sshd
A fájl elején a következő sor látható, amely lehetővé teszi a jelszó hitelesítését
ChallengeResponseAuthentication
Amit igenre kell állítanunk.
Az egyszeri jelszó-hitelesítés engedélyezéséhez adja hozzá a következő két sort.
@include common-auth #One-time password authentication via Google Authenticator auth required pam_google_authenticator.so
Mentse és zárja be a fájlt.
Mostantól minden alkalommal, amikor SSH kapcsolaton keresztül bejelentkeznek a rendszerbe, a rendszer kéri a felhasználói jelszó és egy ellenőrző kód megadását (a Google Authenticator által generált egyszeri jelszót).
Helló, meglehetősen egyszerű bemutató, azonban miután megtettem az összes lépést, amelyeket az ssh-n keresztül már nem tudok megadni, ez helytelen jelszóhibát okoz nekem, nem is kérhetek 2FA-t.
Van Ubuntu Server 20.04