Generuj klucze SSH w systemie Linux

Generate Ssh Keys Linux



SSH oznacza S bezpieczny CII ell i jak sama nazwa wskazuje, służy do ustanowienia bezpiecznego połączenia między klientem a jego serwerem. Domyślnie każdy system operacyjny oparty na Linuksie obsługuje SSH. Protokół SSH jest zwykle używany do zdalnego dostępu, wydawania poleceń i przesyłania plików. W tym poście zademonstrujesz, jak generować klucze SSH i używać ich do ochrony serwera i cennych informacji.







Generowanie klucza SSH

Kiedy generujemy parę kluczy SSH, jest ona generowana w dwóch krokach. Jednym z nich jest utworzenie klucza SSH po stronie klienta, a drugim skopiowanie go na serwer lub dowolny zdalny host. Para kluczy składa się z plików kluczy prywatnych i publicznych o nazwach id_rsa i id_rsa.pub w katalogu ~/.ssh.

Adres IP mojego systemu klienta to

$IPdo

192.168.18.130

Klucz SSH można wygenerować, uruchamiając w terminalu polecenie ssh-keygen.

$ssh-keygen

Poprosi Cię o podanie nazwy pliku, w którym chcesz zapisać klucz prywatny i publiczny, lub możesz przejść z domyślnymi wybranymi plikami id_rsa i id_rsa.pub w katalogu .ssh (/home/user/.ssh/id_rsa ). Naciśnij klawisz Enter, aby wybrać domyślny dostarczony plik.

Następnie poprosi o hasło. Hasło jest w rzeczywistości rodzajem dodatkowej warstwy bezpieczeństwa do zabezpieczania połączenia między hostem a klientem. Gdy zalogujesz się do hosta, ponownie poprosi o hasło. Więc albo wprowadź hasło, albo zostaw je puste i naciśnij Enter bez podawania hasła.

Gdy skończysz z hasłem, należy wygenerować klucz SSH.

Na zrzucie ekranu możesz zauważyć, że wygenerowany klucz to RSA 3072. Co to oznacza?

Typ algorytmu i rozmiar klucza SSH

Domyślnie typ algorytmu generowanego klucza to RSA, a jego rozmiar w bitach to 3072 bity. Ale możesz to zmienić, jeśli chcesz.

Istnieją trzy główne typy algorytmów do generowania kluczy SSH.

RSA – Rivest Shamir Adleman. Jest to klucz o minimalnym rozmiarze 2048 i opiera się na trudności w rozkładaniu na czynniki dużych liczb.

DSA – algorytm podpisu cyfrowego. Ten klucz jest najczęściej używany z rozmiarem 1024.

ECDSA – Algorytm podpisu cyfrowego krzywych eliptycznych. Obsługuje 256, 384 i 521 bitów.

Teraz, jeśli chcesz podać żądany typ algorytmu i rozmiar w bitach, możesz podać typ algorytmu, po którym następuje fraza -t po poleceniu ssh-keygen, a także możesz podać rozmiar w bitach wraz z nim, a następnie -b wyrażenie. Przykład jest następujący:

$ssh-keygen -TRsa-b 4096

Jak widać na zrzucie ekranu, typ algorytmu klucza to RSA, a rozmiar bitu to 4096. To świetnie.

Kopiowanie klucza SSH do hosta

Możesz po prostu skopiować klucz SSH do hosta, uruchamiając polecenie podane poniżej w terminalu klienta.

$ssh-copy-id nazwa użytkownika@adres-ip-hosta

Pamiętaj, aby zastąpić nazwę użytkownika i adres IP hosta swoją nazwą użytkownika i adresem IP hosta. Nazwa użytkownika i adres IP mojego hosta to

Nazwa użytkownika: linuxuser
Adres IP: 192.168.18.131

Na tym etapie możesz napotkać błąd połączenia odrzuconego przez port 22. W przypadku błędu prosimy o zapoznanie się z naszym dedykowanym artykułem ( Jak naprawić: Połączenie odrzucone przez port 22 Debian/Ubuntu – Linux Hint ) dotyczący obsługi takiego błędu.

Po uruchomieniu powyższego polecenia potwierdzi od Ciebie kontynuowanie połączenia; wpisz tak, aby kontynuować.

Po pomyślnym skopiowaniu możesz zalogować się do komputera serwera za pomocą klucza SSH.

Zaloguj się do serwera

Po pomyślnym skopiowaniu klucza SSH do hosta możemy zalogować się do hosta za pomocą komendy ssh oraz podając nazwę użytkownika i adres IP hosta za pomocą poniższej składni.

$ciszaNazwa Użytkownika@adres-ip-hosta

Nie zapomnij zastąpić nazwy użytkownika i adresu IP nazwą użytkownika i adresem IP hosta.

I tutaj jesteś teraz zalogowany do komputera hosta, jeśli wpiszesz polecenie ip a w terminalu.

$IPdo

Wyświetli adres IP komputera hosta, ponieważ jesteś teraz na serwerze.

Zakończyć

W ten sposób możesz generować klucze SSH, kopiować je na maszynę hosta i uzyskiwać dostęp do hosta za pomocą kluczy SSH. Bardzo dziękuję!