Jak skonfigurować uwierzytelnianie SSH bez hasła na RHEL 9

Jak skonfigurować uwierzytelnianie SSH bez hasła na RHEL 9

Krótki Bezpieczna skorupa, Ssh to bezpieczny protokół sieciowy, który szyfruje ruch między dwoma punktami końcowymi. Umożliwia użytkownikom bezpieczne łączenie i/lub przesyłanie plików przez sieć.

Ssh jest głównie używany przez administratorów sieci i systemu do bezpiecznego uzyskiwania dostępu i zarządzania zasobami zdalnymi, takimi jak serwery i urządzenia sieciowe przez sieć. Wykorzystuje silne metody szyfrowania, takie jak AES i algorytmy mieszania, takie jak SHA-2 i Ecdsa szyfrować ruch wymieniany między klientem a zdalnym systemem.

[Możesz także polubił: Jak zabezpieczyć i utwardzić serwer OpenSsh]

Ssh wdraża dwie metody uwierzytelniania; oparte na hasłach uwierzytelnianie i klucz publiczny uwierzytelnianie. Ten ostatni jest bardziej preferowany, ponieważ oferuje lepsze bezpieczeństwo za pomocą uwierzytelnienia klucza publicznego, które chroni system przed atakami brutalnej siły.

Mając to na uwadze, zademonstrujemy, w jaki sposób możesz skonfigurować Ssh Uwierzytelnianie oparte na kluczach RHEL 9.

Testowanie konfiguracji laboratorium

Tak wygląda nasza konfiguracja

  • System Linux/Unix (oparty na Ubuntu lub RHEL), na którym wygenerujemy parę kluczów. Do tego przewodnika używam Ubuntu dystrybucja.
  • Instancja RHEL 9 (ta chmura będzie lokalnym lub chmurowym VPS).

Krok 1: Wygeneruj parę kluczy ECDSA SSH

Uzyskaj dostęp do systemu Linux i wygeneruj Ssh Para kluczy w następujący sposób. W tym przewodniku wygenerujemy parę kluczową za pomocą Ecdsa Algorytm, który zapewnia lepsze szyfrowanie i bezpieczeństwo.

Dlatego w celu wygenerowania Ecdsa Para klucza, uruchom polecenie:

$ ssh -keygen -t ecdsa 

Polecenie przeprowadzi Cię przez serię podpowiedzi.

Domyślnie para kluczy jest zapisywana w katalogu domowym użytkownika w środku ~/.ssh informator. Możesz zaakceptować to jako miejsce docelowe pary klawisza SSH, naciskając WCHODZIĆ Na klawiaturze, w przeciwnym razie możesz określić preferowaną ścieżkę. W tym przewodniku postanowiliśmy pójść z domyślną ścieżką.

Następnie zostaniesz poproszony o dostarczenie hasła. Jest to w zasadzie hasło, które będziesz musiał podać po nawiązaniu połączenia z pilotem RHEL 9 system. Zapewnia dodatkową warstwę ochrony na szyfrowaniu oferowanym przez klucze SSH.

Jeśli jednak twój plan polega na automatyzacji procesów w stosunku do Ssh Ochrona lub skonfiguruj uwierzytelnianie bez hasła, zaleca się pozostawienie tego pustego. I dlatego zostawimy to puste po raz kolejny, uderzając Enter.

Poniżej znajduje się wyjście czasu wykonawczego polecenia.

Wygeneruj parę kluczy ECDSA SSH

Możesz rzucić okiem na parę klucza SSH za pomocą polecenia LS, jak pokazano.

$ ls -l ~//.ssh 

ID_ECDSA jest kluczem prywatnym ID_ECDSA.pub jest kluczem publicznym. Klucz prywatny powinien zawsze pozostać w tajemnicy i nie powinien być udostępniany ani ujawniony. Z drugiej strony możesz dzielić się opinią publiczną każdego zdalnego systemu, z którym chcesz się połączyć.

Sprawdź klucze SSH

Krok 2: Skopiuj publiczny klucz SSH do zdalnego RHEL 9

Następnym krokiem jest skopiowanie klucza publicznego do pilota RHEL 9 instancja. Możesz to zrobić w sposób ręczny lub używać ssh-copy-id narzędzie wiersza polecenia. Ponieważ ta ostatnia jest znacznie łatwiejsza i wygodniejsza w użyciu, wywołaj go za pomocą następującej składni.

$ ssh-copy-id [e-mail chroniony] 

W naszym przypadku polecenie będzie następujące, gdzie Tecmint to zwykły użytkownik logowania i 192.168.254.129 to adres IP zdalnego użytkownika.

$ ssh-copy-id [e-mail chroniony] 

Wpisz tak, aby kontynuować łączenie. Następnie podaj hasło użytkownika zdalnego i naciśnij Enter.

Skopiuj klucz SSH do zdalnego RHEL 9

Klucz publiczny zostanie skopiowany do autoryzowane_keys plik w ~/.ssh katalog katalogu domowego użytkownika zdalnego użytkownika. Po skopiowaniu klucza możesz teraz zalogować się do pilota RHEL 9 instancja za pomocą uwierzytelniania klucza publicznego.

NOTATKA: W RHEL 9, Logowanie root przez SSH jest domyślnie wyłączone lub odmawiane. Dzieje się tak z dobrych powodów - uniemożliwia atakującemu zalogowanie. Dlatego kopiowanie klucza publicznego do systemu RHEL jako root zawiedzie.

Włącz login root w RHEL 9

Jeśli chcesz zalogować się jako root, musisz edytować domyślną konfigurację SSH w następujący sposób.

$ sudo vim/etc/ssh/sshd_config 

Następnie ustaw Pertrootlogin przypisują Tak i zapisz zmiany i wyjdź z pliku.

Aby zastosować wprowadzone zmiany, uruchom ponownie usługę SSH.

$ sudo systemctl restart ssh 

Krok 3: Sprawdź uwierzytelnianie klucza publicznego SSH

Teraz potwierdźmy uwierzytelnianie klucza publicznego. Aby to zrobić, zaloguj się w następujący sposób.

$ ssh [chroniony e -mail] 

Tym razem nie zostaniesz poproszony o hasło, a wpadniesz prosto do pilota RHEL 9 Shell, jak pokazano. Możesz także zweryfikować obecność autoryzowane_keys Plik, jak wspomniano wcześniej.

$ ls -l ~//.ssh 
Sprawdź plik autoryzowany_keys

Możesz także wyświetlić Kryptograficzne plik klucza publicznego za pomocą polecenia CAT.

$ cat ~/.ssh/autoryzowane_keys 
Zobacz klucz kryptograficzny

Na pulpicie Linux, na którym wygenerowaliśmy Ssh klucze, plik o nazwie znane_hosts jest generowany w ~/.ssh informator. Zawiera odcisk palca wszystkich zdalnych serwerów, z którymi system podłączył system.

Sprawdź plik znany_hosts

W tym przewodniku pomyślnie skonfigurowaliśmy uwierzytelnianie oparte na kluczu SSH RHEL 9. Twoja opinia jest bardzo mile widziana.