Korzystanie z OpenSSH z uwierzytelnianiem dwuskładnikowym dodając dodatkową warstwę bezpieczeństwa

Korzystanie z OpenSSH z uwierzytelnianiem dwuskładnikowym dodając dodatkową warstwę bezpieczeństwa

OpenSSH to powszechnie używany pakiet oprogramowania dla bezpiecznego zdalnego dostępu do systemów i serwerów przez Internet. Zapewnia zaszyfrowany kanał komunikacyjny między dwoma systemami, zapobiegając nieautoryzowanemu dostępowi i podsłuchom. Jednak poleganie wyłącznie na hasłach do uwierzytelnienia może spowodować, że Twój system jest podatny na ataki brutalnej siły i zgadywanie hasła. Uwierzytelnianie dwuskładnikowe (2FA) zapewnia dodatkową warstwę bezpieczeństwa do OpenSSH, wymagając od użytkowników dostarczania dodatkowych informacji, zwykle jednorazowego kodu generowanego przez aplikację mobilną, oprócz hasła.

W tym artykule zbadamy, jak skonfigurować OpenSSH z uwierzytelnianiem dwuskładnikowym na serwerze Linux, dodając dodatkową warstwę bezpieczeństwa do zdalnego dostępu.

Krok 1: Instalowanie Google Authenticator

Pierwszym krokiem jest zainstalowanie aplikacji Google Authenticator na serwerze. Google Authenticator to szeroko używana aplikacja mobilna, która generuje jednorazowe kody dla 2FA. Jest dostępny dla urządzeń z Androidem i iOS.

Aby zainstalować Google Authenticator na serwerze Linux, użyj następującego polecenia:

sudo apt-get instaluj libpam-google-autenticator  

Jedno systemy oparte na REL:

sudo yum instaluj Google-Autenticator  

To zainstaluje moduł uwierzytelniający Google dla modułów uwierzytelniania wtyczki (PAM) na serwerze.

Krok 2: Konfigurowanie Google Authenticator

Po zainstalowaniu Google Authenticator musisz go skonfigurować dla swojego konta użytkownika. Aby to zrobić, uruchom następujące polecenie:

Google-Authenticator  

To spowoduje skłonność do serii pytań, aby skonfigurować Authenticator Google dla konta użytkownika. Pytania obejmują:

  • Czy chcesz, aby tokeny uwierzytelniania były oparte na czasie (T/N)?
  • Jeśli stracisz telefon, możesz odzyskać tokeny z kodów kopii zapasowych. Czy chcesz włączyć tę funkcję (T/N)?
  • Czy chcesz wymagać kodu potwierdzenia za każdym razem, gdy logujesz się (T/N)?

Odpowiedz na pytania zgodnie z Twoimi preferencjami. Po zakończeniu konfiguracji Google Authenticator wygeneruje kod QR, który możesz skanować za pomocą aplikacji Google Authenticator na urządzeniu mobilnym.

https: // www.Google.com/wykres?CHS = 200x200 i chld = m | 0 & cht = qr & chl = otpauth: // totp/[chroniony e -mail]%3fsecret%3DWUGQUFLAEAAAAAAS Twoim nowym tajnym kluczem jest: WUGQECLUOFLAAAAAAAZ Twój kod weryfikacyjny to 002879 Kody zarysowania awaryjnego to: 52979690 49230818 1988 ja, aby zaktualizować „~/.Google_authenticator „Plik (y/n) y? Ogranicza to do jednego logowania co około 30 lat, ale zwiększa twoje szanse na zauważenie, a nawet zapobieganie atakom man-wtłań (T/N) y, tokeny są dobre przez 30 sekund i aby zrekompensować możliwe czas między klientem a serwerem, zezwalamy na dodatkowy token przed i po bieżącym czasie. Jeśli masz problemy ze słabą synchronizacją czasu, możesz zwiększyć okno z jego domyślnego rozmiaru 1: 30 minut do około 4 minut. Czy chcesz to zrobić (t/n) y Jeśli komputer, na który się zalogujesz. Domyślnie ogranicza to atakujących do nie więcej niż 3 prób logowania co 30 lat. Czy chcesz włączyć ograniczanie stawek (T/N) Y 

Google Authenticator pokaże ci tajny klucz i wiele „Kody zarysowania awaryjnego.„Kody awaryjne mogą być używane tylko raz na wypadek utraty tajnego klucza, więc zapisz je do bezpiecznego miejsca.

Użyj aplikacji Google Authenticator w telefonach z Androidem, iPhonelem lub Blackberry, aby wygenerować kod weryfikacyjny, wprowadzając tajny klucz. Możesz także zeskanować kod kreskowy podany w adresie URL, aby to zrobić.

Możesz także użyć aplikacji opartych na Java do generowania kodów weryfikacji. Użyj poniżej linku, aby uzyskać szczegóły.

http: // blog.Jcuff.NET/2011/02/Cli-Java oparta na Google-Authenticator.html

Krok 3: Konfigurowanie OpenSsh

Teraz, gdy skonfigurowałeś Authenticator Google dla swojego konta użytkownika, musisz skonfigurować OpenSsh, aby z niego korzystać.

  1. Aby to zrobić, edytuj „/Etc/pam.d/sshd ” Plik za pomocą ulubionego edytora tekstu:
    sudo nano /etc /pam.D/sshd  

    Dodaj następujący wiersz u góry pliku:

    Wymagane autoryzm PAM_GOOGLE_AUTHENTICATOR.Więc
    1Wymagane autoryzm PAM_GOOGLE_AUTHENTICATOR.Więc

    Zapisz i zamknij plik.

  2. Następnie edytuj „/Etc/ssh/sshd_config” plik:
    sudo nano/etc/ssh/sshd_config  

    Znajdź linię, która zaczyna się od „ChallengerEsponseAutentication” i zmień jego wartość na tak:

    ChallengerEsponseAuthentication Tak
    1ChallengerEsponseAuthentication Tak

    Zapisz i zamknij plik.

  3. Na koniec ponownie uruchom usługę SSH, aby zmiany w obowiązywaniu:
    Sudo Service SSH Restart  
  4. Krok 4: Testowanie

    Teraz, gdy skonfigurowałeś OpenSSH z uwierzytelnianiem dwuskładnikowym, możesz to przetestować, próbując zalogować się na serwerze ze zdalnego komputera. Gdy zostaniesz wyświetlony poproszony o hasło, zostaniesz również wyświetlony poproszony o kod weryfikacyjny z aplikacji Google Authenticator na urządzeniu mobilnym.

    Jeśli skonfigurowałeś wszystko poprawnie, powinieneś być w stanie z powodzeniem zalogować się na serwerze, używając zarówno hasła, jak i kodu weryfikacji.

    Wniosek

    Używanie OpenSSH z uwierzytelnianiem dwuskładnikowym jest prostym, ale skutecznym sposobem na dodanie dodatkowej warstwy bezpieczeństwa do zdalnego dostępu. Wymagając od użytkowników dostarczania dodatkowych informacji, takich jak jednorazowy kod generowany przez aplikację mobilną, możesz znacznie zmniejszyć ryzyko nieautoryzowanego dostępu do systemu.

    Postępując zgodnie z krokami opisanymi w tym artykule, możesz łatwo skonfigurować OpenSSH z uwierzytelnianiem dwuskładnikowym na serwerze Linux. Pamiętaj, aby zawsze informować swój serwer i aplikację Google Authenticator na aktualizację, aby zapewnić najlepsze możliwe bezpieczeństwo.

    Warto zauważyć, że chociaż 2FA może znacznie poprawić bezpieczeństwo, nie jest to niezawodne. Atakujący mogą nadal używać inżynierii społecznej lub innych metod, aby oszukać użytkowników do ujawnienia haseł lub kodów weryfikacyjnych. Dlatego ważne jest również wdrożenie innych środków bezpieczeństwa, takich jak regularne zmiany haseł, silne zasady haseł i systemy wykrywania włamań, aby dalej chronić system.

    Podsumowując, użycie OpenSSH z uwierzytelnianiem dwuskładnikowym może znacznie zwiększyć bezpieczeństwo Twojego zdalnego dostępu. Wykonanie kroków opisanych w tym artykule możesz łatwo skonfigurować 2FA dla OpenSSH na serwerze Linux. Zawsze informuj swój system i aplikację dla uwierzytelniania Google, aby zapewnić najlepsze możliwe bezpieczeństwo.