Bezpieczeństwo jest kluczową kwestią dla administratorów serwerów, szczególnie gdy istnieje potrzeba regularnego zdalnego dostępu do serwerów. Ochrona przed cyberatakami ma kluczowe znaczenie dla usprawnienia przepływu pracy i zapewnienia ciągłości działania biznesu. Standardowa praktyka używania nazwy użytkownika i hasła jest wysoce niebezpieczna, niepewna i nieefektywna. Potrzebujesz solidnej i zaawansowanej metody, takiej jak autoryzacja za pomocą pary kluczy SSH, aby uzyskiwać dostęp do serwerów, zarządzać nimi i je kontrolować. Algorytmy kryptograficzne stosowane w kluczach SSH zapewniają zaawansowany poziom bezpieczeństwa w celu ochrony serwerów, gdzie odszyfrowanie staje się niemożliwe, nawet poprzez brute force.
Dzisiaj, uwierzytelnianie oparte na kluczach SSH jest najbardziej niezawodnym sposobem uwierzytelniania i ulubionym rozwiązaniem wśród użytkowników systemu Linux. Dzięki SSH masz możliwość wyboru kluczy “RSA” (Rivest-Shamir-Adleman) lub “DSA” (“Digital Signature Algorithm”). Jeśli generujesz klucze po raz pierwszy, zalecaną opcją jest RSA. W tym samouczku użyjemy metody “klucza RSA” z domyślnym rozmiarem portu 2048 w celu wygenerowania kluczy prywatnych i publicznych oraz połączenia się z VPS.
Jak działa uwierzytelnianie za pomocą klucza SSH?
Uwierzytelnianie za pomocą klucza SSH wykorzystuje model klient-serwer do wymiany danych między serwerem a klientem. Serwer akceptuje połączenia, podczas gdy klient jest odpowiedzialny za protokół Transmission Control Protocol (TCP) w celu połączenia się z serwerem. Generujesz parę kluczy (klucz prywatny i publiczny) i dopasowujesz serwer do klienta. Klucz prywatny jest przechowywany na Twoim lokalnym komputerze, natomiast klucz publiczny jest przesyłany na serwer. Klucz prywatny jest weryfikowany za pomocą klucza publicznego w celu nawiązania połączenia. Połączenie zostanie nawiązane tylko wtedy, gdy oba klucze przejdą pomyślnie weryfikację i nastąpi dopasowanie, w przeciwnym razie połączenie zostanie odrzucone.
Niezaprzeczalnie, uwierzytelnianie za pomocą pary kluczy SSH to wysoce bezpieczny i niezawodny sposób łączenia się z serwerami. W rzeczywistości użytkownicy systemu Linux mogą skonfigurować serwer Linux i korzystać z uwierzytelniania opartego na kluczach również. Niezależnie od używanego systemu operacyjnego, możesz wykorzystać uwierzytelnianie za pomocą pary kluczy, aby chronić swoje zasoby i cieszyć się bezproblemową obsługą. W tym samouczku przeprowadzimy Cię przez kroki generowania kluczy SSH za pomocą programu PuTTY i łączenia ich z VPS. Zaczynajmy!
Wymagania wstępne
Aby przejść przez ten samouczek, będziesz potrzebować:
-
Dostępu do serwera Linux.
-
Zainstalowanego w systemie programu PuTTY i PuTTYgen.
Krok 1 — Pobierz PuTTYgen
Pobierz PuTTYgen z oficjalnej strony internetowej.
Krok 2 — Wygeneruj parę kluczy SSH
- Najpierw kliknij dwukrotnie plik puttygen.exe, aby otworzyć program PuTTYgen pobrany w Kroku 1.
-
Następnie w sekcji Parameters wybierz RSA w opcji Type of key to generate:

- Zachowaj domyślny rozmiar klucza RSA
2048. Możesz go również zwiększyć do
4096 aby dodać dodatkową warstwę bezpieczeństwa i ochrony przed atakami brute-force:

- Następnie kliknij przycisk Generate, aby wygenerować parę kluczy SSH pair:

- Następnie przesuń wskaźnik myszy nad pusty obszar w sekcji Key, aż pasek postępu się zapełni:

- Zobaczysz publiczny klucz SSH na ekranie:

- Dodatkowo dodaj hasło klucza (Key passphrase) ze względów bezpieczeństwa. Potwierdź i przejdź dalej:

- Zapisz klucz prywatny na swoim komputerze, klikając przycisk Save private key button:

- Nazwij prywatny klucz i zapisz go w dowolnym miejscu na komputerze. Pamiętaj, że będziemy potrzebować tego klucza w kolejnym kroku, więc upewnij się, że znasz jego lokalizację:

- Podobnie zapisz klucz publiczny na swoim komputerze, klikając przycisk Save public key button:

- Możesz również skopiować plik klucza publicznego i zapisać go na swoim komputerze. Będziemy potrzebować klucza publicznego, aby przesłać go na serwer w celu nawiązania bezpiecznego połączenia:

Teraz pomyślnie wygenerowałeś parę kluczy SSH! Przejdźmy do konfiguracji klucza prywatnego w programie PuTTY. Alternatywnie możesz pominąć Krok 3 i sprawdzić, jak wygenerować zestaw kluczy RSA za pomocą PuTTYgen, aby bezpiecznie uzyskać dostęp do chmury CloudSigma.
Krok 3 — Zapisz ustawienia swojego serwera
Jak dotąd serwer nadal nie rozpoznaje Twojego systemu. Dołączmy klucz prywatny do PuTTY, aby przedstawić serwer naszemu systemowi. Wykonaj poniższe kroki:
-
Uruchom PuTTY, klikając dwukrotnie jego plik wykonywalny.
-
W lewym panelu bocznym otwórz sekcję Connection, przejdź do SSH i kliknij Auth:

-
W polu Private key for authentication kliknij Browse i otwórz plik klucza prywatnego zapisany w Kroku 2 (11.):

Krok 4 — Dodawanie klucza prywatnego do serwera
Wklejmy skopiowany klucz publiczny do pliku ~/.ssh/authorized_keys na swoim serwerze.
-
Zaloguj się na swój serwer docelowy.
-
Jeśli Twój folder SSH jeszcze nie istnieje, utwórz go ręcznie za pomocą authorized_keys:
|
1 |
mkdir ~/.ssh | touch ~/.ssh/authorized_keys |
-
Następnie zmień uprawnienia, zabezpieczając klucze SSH:
|
1 |
chmod 0700 ~/.ssh; chmod 0644 ~/.ssh/authorized_keys |
-
Następnie otwórz plik ~/.ssh/authorized_keys za pomocą edytora tekstu vim:
|
1 |
vim ~/.ssh/authorized_keys |
-
Naciśnij klawisz i na klawiaturze i kliknij prawym przyciskiem myszy, aby wkleić.
-
Aby zapisać, naciśnij następujące klawisze na klawiaturze (w tej kolejności): Esc, :, w, q, Enter.
Krok 5 — Wyłączenie logowania za pomocą nazwy użytkownika/hasła
Po zweryfikowaniu logowania opartego na kluczach możesz wyłączyć logowanie za pomocą nazwy użytkownika lub hasła, aby zwiększyć bezpieczeństwo.
-
Edytuj plik konfiguracyjny serwera SSH znajdujący się w /etc/ssh/sshd_config.
-
Następnie naciśnij klawisz i na klawiaturze i edytuj linie:
|
1 2 3 4 |
[...] PasswordAuthentication no [...] UsePAM no [...] |
-
Aby zapisać, naciśnij następujące klawisze na klawiaturze (w tej kolejności): Esc, :, w, q, Enter.
-
Następnie przeładuj konfigurację serwera SSH:
|
1 |
$ sudo reload ssh |
Podsumowanie
Używanie uwierzytelniania za pomocą klucza SSH to doskonały wybór, aby zabezpieczyć serwery i chronić system przed cyberzagrożeniami. Jednak metoda zabezpieczeń oparta na kluczach wymaga czujności podczas zapisywania kluczy prywatnych. Pamiętaj, aby zachować klucz prywatny w tajemnicy i nigdy nikomu go nie ujawniać. Jeśli nie zadbasz o bezpieczeństwo swojego klucza prywatnego, hakerzy mogą uzyskać dostęp i ostatecznie monitorować Twoje serwery bez Twojej zgody.
Chcesz dowiedzieć się więcej o serwerach SSH i Linux? Zapoznaj się z poniższymi poradnikami na naszym blogu:
- Jak używać SSH do łączenia się z odległym serwerem w systemie Ubuntu
- Przegląd SSH – serwery, klienci i klucze SSH
- Konfiguracja serwera Linux do korzystania z uwierzytelniania opartego na kluczach SSH
Miłego korzystania z komputera!


Komentarze
Brak komentarzy. Bądź pierwszy.