V tomto tutoriálu popíšeme nezbytné kroky ke konfiguraci dvoufaktorové autentizace (2FA) pomocí Google authenticator na Ubuntu 16.04 VPS. Tato aplikace obsahuje implementace jednorázových generátorů přístupových kódů pro několik mobilních platforem. Tato metoda přidává na váš server další vrstvu ochrany a přidává další krok k základnímu přihlašovacímu postupu.
1. Přihlaste se přes SSH
Přihlaste se ke svému serveru přes SSH jako uživatel root
ssh root@IP_Address
2. Aktualizujte systémové balíčky
Aktualizujte všechny nainstalované balíčky:
apt-get update && apt-get upgrade
3. Nainstalujte Google Authenticator
Nainstalujte Google Authenticator balíček.
apt-get install libpam-google-authenticator
Jakmile je balíček nainstalován, spusťte program google-authenticator a vytvořte klíč pro uživatele, se kterým se budete přihlašovat. Program může generovat dva typy autentizačních tokenů – časové a jednorázové tokeny . Časová hesla se budou náhodně měnit v určitém čase a jednorázová hesla jsou platná pro jediné ověření.
4. Spusťte Google Authenticator
V našem případě použijeme časová hesla. Spusťte program pro vytvoření klíčů
google-authenticator
Budete dotázáni, zda chcete, aby autentizace byla založena na čase.
Do you want authentication tokens to be time-based (y/n) y
Velký QR kód bude vygenerován ve vašem terminálu. Kód můžete naskenovat pomocí ověřovací aplikace na telefonu nebo tabletu Android/iOS/Windows nebo zadat tajný klíč vygenerovaný na obrazovce.
Budou také generovány nouzové stírací kódy. Tyto kódy můžete použít k ověření v případě ztráty mobilního zařízení.
Your emergency scratch codes are: 80463533 68335920 89221348 12489672 11144603
Uložte nastavení ověřování pro uživatele root tak, že na další otázku odpovíte ANO
Do you want me to update your "/root/.google_authenticator" file (y/n) y
5. Nakonfigurujte Authenticator tak, aby generoval jednorázová hesla.
Dále můžete nakonfigurovat autentizátor tak, aby generoval jednorázová hesla. Protože trvají 30 sekund, všechna vygenerovaná hesla lze použít jednou.
Do you want to disallow multiple uses of the same authentication token? This restricts you to one login about every 30s, but it increases your chances to notice or even prevent man-in-the-middle attacks (y/n) y
Pokud máte problémy se synchronizací času napříč zařízeními, můžete použít další nastavení, takže tuto možnost nepoužijeme
By default, tokens are good for 30 seconds and in order to compensate for possible time-skew between the client and the server, we allow an extra token before and after the current time. If you experience problems with poor time synchronization, you can increase the window from its default size of 1:30min to about 4min. Do you want to do so (y/n) n
Další nastavení zabraňuje útokům hrubou silou. Budete mít pouze tři šance za 30 sekund zadat správné heslo.
If the computer that you are logging into isn't hardened against brute-force login attempts, you can enable rate-limiting for the authentication module. By default, this limits attackers to no more than 3 login attempts every 30s. Do you want to enable rate-limiting (y/n) y
Nyní máme nakonfigurovanou aplikaci Google Authenticator a dalším krokem je konfigurace nastavení ověřování v openSSH. Chcete-li tak učinit, otevřete soubor „/etc/pam.d/sshd“ a na konec souboru přidejte následující řádek:
# vim /etc/pam.d/sshd auth required pam_google_authenticator.so
Uložte změny a otevřete soubor „/etc/ssh/sshd_config“ a povolte ověřování odpovědi na výzvu.
# vim /etc/ssh/sshd_config ChallengeResponseAuthentication yes
6. Restartujte SSH Server
Uložte soubor a restartujte SSH server, aby se změny projevily.
systemctl restart ssh
Pokud jste pozorně sledovali tento návod, na vašem serveru je povoleno dvoufaktorové ověřování a pokaždé, když se pokusíte přihlásit k vašemu Ubuntu VPS přes SSH, budete muset zadat heslo svého uživatele a ověřovací kód vygenerovaný aplikací Google Authentication na vašem mobilním zařízení. .
Samozřejmě nemusíte zabezpečit SSH pomocí dvoufaktorové autentizace na Ubuntu 16.04, pokud používáte některou z našich Linuxových VPS hostingových služeb, v takovém případě můžete jednoduše požádat naše zkušené linuxové administrátory, aby zabezpečili SSH pomocí dvoufaktorové autentizace. na Ubuntu 16.04. Jsou k dispozici 24×7 a okamžitě se postarají o váš požadavek.
PS. Pokud se vám líbil tento příspěvek o tom, jak zabezpečit SSH pomocí dvoufaktorového ověřování na Ubuntu 16.04, sdílejte jej se svými přáteli na sociálních sítích pomocí tlačítek níže nebo zanechte odpověď v sekci komentářů. Děkuji.
Nová verze je k dispozici zde:Nastavení vícefaktorové autentizace pro SSH na Ubuntu 20.04.