Jak zainstalować SSH na Rocky Linux 9 lub 8

SSH (Secure Shell) to bezpieczny protokół używany do zdalnego dostępu do serwerów Linux i zarządzania nimi. Zapewnia szyfrowaną komunikację, zapewniając bezpieczeństwo danych przesyłanych pomiędzy klientem a serwerem. SSH to podstawowe narzędzie dla administratorów systemów i programistów, umożliwiające im wykonywanie różnych zadań, takich jak wykonywanie poleceń, przesyłanie plików i bezpieczne zarządzanie usługami sieciowymi w niezabezpieczonej sieci.

Aby skonfigurować SSH w Rocky Linux 9 lub 8, możesz wykonać prosty proces instalacji, korzystając z domyślnych repozytoriów. Ten przewodnik przeprowadzi Cię przez etapy instalacji i dostarczy wskazówek dotyczących wstępnej konfiguracji w celu zwiększenia bezpieczeństwa i użyteczności.

Zaktualizuj Rocky Linux przed instalacją SSH

Przed instalacją i konfiguracją SSH w Rocky Linux ważne jest, aby upewnić się, że pakiety systemu są aktualne. Gwarantuje to nie tylko płynniejsze działanie, ale także minimalizuje potencjalne konflikty oprogramowania.

Aby zaktualizować system Rocky Linux, użyj polecenia:

sudo dnf upgrade --refresh

Zainstaluj SSH za pomocą polecenia DNF

Następny krok polega na sprawdzeniu, czy serwer OpenSSH znajduje się już w systemie Rocky Linux. Można to sprawdzić wykonując polecenie:

rpm -qa | grep openssh-server

To polecenie zwróci odpowiednie dane wyjściowe, jeśli zainstalowany jest serwer OpenSSH. Jeśli nie ma wyników, oznacza to brak serwera OpenSSH w twoim systemie. Aby rozwiązać ten problem i zainstalować serwer OpenSSH, użyj następującego polecenia:

sudo dnf install openssh-server

Włącz usługę SSH (SSHD).

Po pomyślnej instalacji serwera OpenSSH konieczne jest włączenie usługi SSHD w środowisku systemowym. Zapewnia to automatyczną inicjalizację demona SSH po każdym ponownym uruchomieniu systemu. Aby to osiągnąć, wykonaj polecenie:

sudo systemctl enable sshd

Po ustawieniu usługi SSHD na automatyczne uruchamianie, możesz ręcznie zainicjować serwer SSH, używając:

sudo systemctl start sshd

W celu weryfikacji i upewnienia się, że serwer SSH działa bez problemów, możesz sprawdzić jego status za pomocą:

sudo systemctl status sshd

Aby potwierdzić, że domyślny port (22) aktywnie nasłuchuje przychodzących połączeń SSH, uruchom:

sudo ss -lt

Połącz się ze zdalnym serwerem przez SSH na Rocky Linux 9 lub 8

Po odpowiednim skonfigurowaniu protokołu SSH w systemie Rocky Linux możesz teraz nawiązywać połączenia ze zdalnymi serwerami. Oto szczegółowy opis wykorzystania protokołu SSH w różnych scenariuszach połączeń:

Łączenie przy użyciu uwierzytelniania hasłem za pomocą protokołu SSH w systemie Rocky Linux

Aby nawiązać połączenie ze zdalnym serwerem przy użyciu protokołu SSH z uwierzytelnianiem na podstawie hasła, użyj polecenia:

ssh username@remote_server

W tym miejscu zastąp „nazwę użytkownika” swoją rzeczywistą nazwą użytkownika, a „serwer_zdalny” adresem IP lub nazwą hosta żądanego serwera zdalnego. Po wykonaniu zostaniesz poproszony o podanie hasła w celu uwierzytelnienia.

Łączenie przy użyciu uwierzytelniania klucza publicznego za pomocą protokołu SSH

SSH oferuje uwierzytelnianie kluczem publicznym dla tych, którzy preferują bezpieczniejszą metodę połączenia. Aby połączyć się przy użyciu tej metody, polecenie brzmi:

ssh -i /path/to/private_key username@remote_server

W tym poleceniu zastąp „/path/to/private_key” ścieżką prowadzącą do pliku klucza prywatnego. Podobnie zamień „nazwę użytkownika” na swoją nazwę użytkownika i „serwer_zdalny” na adres IP lub nazwę hosta serwera zdalnego. Ta metoda omija konieczność wprowadzania hasła, opierając się zamiast tego na dostarczonym kluczu prywatnym do uwierzytelnienia.

Określanie alternatywnego portu dla połączenia z SSH

Chociaż domyślnie SSH dla połączeń korzysta z portu 22, niektóre serwery zdalne mogą działać na innych portach. Aby określić alternatywny port podczas połączenia, użyj:

ssh -p 2222 username@remote_server

W tym przykładzie zastąp „2222” numerem portu używanego przez serwer zdalny.

Bezpieczny transfer plików za pomocą SCP z SSH

SCP, czyli Secure Copy, to potężne narzędzie wiersza poleceń, które ułatwia bezpieczne przesyłanie plików pomiędzy systemami poprzez SSH. Aby przesłać plik z lokalnego systemu Rocky Linux na serwer zdalny, polecenie brzmi:

scp /path/to/local/file username@remote_server:/path/to/remote/directory

Zastąp „/path/to/local/file” ścieżką pliku, który chcesz przesłać. Podobnie dostosuj „username” do swojej nazwy użytkownika, „remote_server” do adresu IP lub nazwy hosta zdalnego serwera i „/path/to/remote/directory” do ścieżki katalogu na zdalnym serwerze, gdzie chcesz umieścić przesłane plik.

Skonfiguruj SSH w Rocky Linux

Optymalizacja konfiguracji SSH może zwiększyć bezpieczeństwo i wydajność serwera. Plik konfiguracyjny SSH, znajdujący się w /etc/ssh/sshd_config, zawiera różne parametry, które można dostosować do konkretnych potrzeb. Chociaż poniższe konfiguracje są jedynie przykładami, mogą być korzystne w zależności od konfiguracji serwera lub komputera stacjonarnego.

Wyłączanie uwierzytelniania GSSAPI dla SSH

Uwierzytelnianie GSSAPI, choć pomocne, może czasami powodować opóźnienia podczas nawiązywania połączenia SSH. Aby temu zaradzić, możesz go wyłączyć, dołączając poniższy wiersz do pliku konfiguracyjnego SSH:

GSSAPIAuthentication no

Modyfikowanie limitów czasu sesji SSH dla SSH

Dostosowanie limitów czasu sesji może pomóc w zarządzaniu nieaktywnymi sesjami SSH. Aby ustawić serwer tak, aby wysyłał wiadomość o podtrzymaniu aktywności co 5 minut i kończył sesję, jeśli dwie kolejne wiadomości pozostaną bez odpowiedzi, dodaj:

ClientAliveInterval 300
ClientAliveCountMax 2

Zakaz logowania root dla SSH

Aby zwiększyć bezpieczeństwo, zwłaszcza przed atakami typu brute-force, zaleca się wyłączenie logowania root. Można to osiągnąć za pomocą:

PermitRootLogin no

Implementacja uwierzytelniania za pomocą klucza publicznego dla protokołu SSH

Uwierzytelnianie kluczem publicznym stanowi bezpieczniejszą alternatywę dla metod opartych na hasłach. Aby to skonfigurować, najpierw musisz wygenerować nową parę kluczy SSH:

ssh-keygen -t rsa -b 4096

Następnie prześlij klucz publiczny na żądany serwer zdalny:

ssh-copy-id user@remote_server

Upewnij się, że zastąpiłeś „użytkownik” swoją nazwą użytkownika, a „zdalny_serwer” odpowiednim adresem IP lub nazwą hosta. Na koniec włącz uwierzytelnianie kluczem publicznym w konfiguracji SSH:

PubkeyAuthentication yes

Ograniczanie dostępu SSH dla SSH

W celu zwiększenia bezpieczeństwa możesz ograniczyć dostęp SSH do określonych użytkowników lub grup. Aby to zaimplementować, dodaj:

AllowUsers user1 user2
AllowGroups group1 group2

Zastąp symbole zastępcze rzeczywistymi nazwami użytkowników lub grup, którym chcesz przyznać dostęp.

Zmiana portu SSH dla SSH

SSH domyślnie działa na porcie 22. Biorąc pod uwagę jego sławę, zmiana tego portu może zapobiec próbom nieautoryzowanego dostępu. Aby przypisać nowy port użyj:

Port <port_number>

Wskazane jest wybranie numeru portu z zakresu od 1024 do 65535, który nie jest zajęty przez inną usługę.

Zabezpiecz SSH za pomocą zapory sieciowej

Zapewnij nieprzerwany dostęp podczas pracy z VPS lub środowiskiem serwera zdalnego. Przed wprowadzeniem jakichkolwiek zmian w zaporze Firewalld, zwłaszcza jeśli uzyskujesz zdalny dostęp do systemu, konieczne jest dodanie adresu IP do białej listy. Niezastosowanie się do tego może spowodować niezamierzone zablokowanie dostępu do serwera po zastosowaniu zmian w zaporze.

Aby umieścić swój adres IP na białej liście w zaporze Firewalld, użyj następującego polecenia:

sudo firewall-cmd --permanent --add-source=<your_ip_address>

Zastępować z Twoim rzeczywistym adresem IP.

Gdy Twój adres IP znajdzie się na białej liście, możesz bezpiecznie włączyć usługę SSH do Firewalld:

sudo firewall-cmd --add-service=ssh --permanent

Po dokonaniu niezbędnych korekt zastosuj nową konfigurację zapory:

sudo firewall-cmd --reload

Aby zweryfikować włączenie usługi SSH do zapory, uruchom następujące polecenie:

sudo firewall-cmd --list-services | grep ssh

To polecenie potwierdzi, czy usługa SSH jest prawidłowo dozwolona przez zaporę sieciową, zapewniając bezpieczeństwo i dostępność zdalnych połączeń.

Wniosek

Po pomyślnym zainstalowaniu i skonfigurowaniu SSH w systemie Rocky Linux możesz bezpiecznie zdalnie zarządzać swoim serwerem. Regularnie aktualizuj konfiguracje SSH i stosuj najlepsze praktyki, aby zachować bezpieczeństwo. Postępując zgodnie ze wskazówkami dotyczącymi wstępnej konfiguracji, możesz zapewnić bezpieczniejsze i wydajniejsze zdalne zarządzanie. Korzystaj z solidnych możliwości, jakie oferuje SSH w zakresie bezpiecznego administrowania serwerami.

Joshua James
Chodź za mną
Najnowsze posty autorstwa Joshua James (widzieć wszystko)

Dodaj komentarz