Ten samouczek zapewni ci kilka metod zabezpieczenia Serwer SSH W Ubuntu 22.04.
Zaawansowane metody zabezpieczenia serwera SSH w Ubuntu 22.04
Wykonać Ssh konfiguracja, najpierw musisz sprawdzić, czy Serwer SSH jest instalowany w twoim systemie. Jeśli nie jest, wykonaj następujące polecenie, aby je zainstalować.
$ sudo apt install openSsh-server
Po instalacji otwórz Ssh plik konfiguracyjny o nazwie „sshd_config„Umieszczony w„/etc/ssh”Katalog.
Jednak przed wprowadzeniem jakichkolwiek zmian w tym pliku zdecydowanie zalecamy utworzenie kopii zapasowej pliku konfiguracyjnego za pomocą następującego polecenia.
$ sudo cp/etc/ssh/sshd_config/etc/ssh/sshd_config.Bak
Po utworzeniu pliku kopii zapasowej możesz być w stanie edytować plik konfiguracyjny zgodnie z twoim życzeniem, ponieważ w przypadku błędu możesz być w stanie zastąpić go plik kopii zapasowej.
Po kopii zapasowej użyj następujących kroków, aby zabezpieczyć Serwer SSH na Poziom podstawowy.
Krok 1: Otwórz plik konfiguracyjny SSH
Najpierw otwórz plik konfiguracyjny SSH za pomocą następującego polecenia terminala.
$ sudo nano/etc/ssh/sshd_config
Krok 2: Wyłącz uwierzytelnianie oparte na hasłach
Po otwarciu pliku konfiguracyjnego musisz wyłączyć uwierzytelnianie oparte na hasłach dla serwera SSH. Przewiń w dół i zlokalizuj linię „HasłoAuthentication Tak". Powodem wykonania tego kroku jest to, że dodamy klucze SSH do logowania, które jest bezpieczniejsze niż uwierzytelnianie oparte na hasłach.
Odkształcić linię, jak pokazano poniżej i wymień „Tak" z "NIE" jak pokazano niżej.
Teraz zapisz plik za pomocą klawiszy „Ctrl+x", dodać "Y”I naciśnij Enter.
Krok 3: Odmowa pustego hasła
Czasami użytkownicy mogą uznać za wygodne użycie pustego hasła do autoryzowanego logowania, co naraża bezpieczeństwo SSH na wysokie ryzyko. W ten sposób, aby zabezpieczyć połączenie SSH, musisz odmówić wszystkich prób logowania za pomocą pustego hasła. Aby wykonać ten krok, zlokalizuj linię „Zezwolenie na słowa”I odczuwanie.
Krok 4: Zezwalanie na login root
Aby Twój serwer SSH był bardziej bezpieczny, musisz odmówić dostępu do logowania root, aby umożliwić intruzowi dostęp do serwera za pośrednictwem logowania root. Aby to zrobić, znajdź opcję „Pertrootlogin".
Odkształcić linię i wymień tekst „Zakaz słowa" z "NIE".
Zapisz plik.
Krok 5: Protokół SSH 2
Protokół SSH działa na dwóch protokołach, a mianowicie protokołu 1 i protokołu 2. Protocol 2 ma bardziej zaawansowane funkcje bezpieczeństwa niż protokół 1, więc jeśli chcesz go użyć, musisz dodać wiersz „Protokół 2” do pliku konfiguracyjnego, jak pokazano poniżej.
Krok 6: Ustawienie limitu czasu sesji
Ten krok jest bardzo przydatny w momencie, gdy ktoś opuszcza komputer na dłużej. Możesz skrócić czas sesji swojego serwera SSH, aby umożliwić intruzowi dostęp do systemu. W naszym przypadku ustawiamy wartość na 200 sekund. Jeśli użytkownik pozostanie z dala od swojego systemu przez 200 sekund, automatycznie się wyloguje.
Aby zrobić ten krok, znajdź zmienną o nazwie „ClientAliveInterval".
Odkształcić zmienną i zastąp wartość 0 z wybraną wartością, a następnie zapisz plik, aby wprowadzić zmiany.
Krok 7: Pozwól konkretnemu użytkownikowi uzyskać dostęp do serwera
Możesz także zabezpieczyć serwer SSH, umożliwiając tylko konkretnego użytkownika dostęp do niego. Aby wykonać ten krok, dodaj zmienną „Niezdłożyciele”W pliku konfiguracyjnym. Następnie dodaj nazwę użytkownika przed zmienną, jak pokazano poniżej.
Krok 8: Ogranicz liczbę prób logowania
Możesz także ograniczyć liczbę prób logowania do zabezpieczenia serwera SSH, ponieważ przypadek może pojawić się, gdy intruz może wykonać atak brutalnej siły, aby zalogować się do systemu za pomocą wielu prób. W takim przypadku możesz ustawić limit prób logowania, aby umożliwić intruzowi odgadnąć odpowiednie hasło za pomocą licznych prób. Aby wykonać ten krok, zlokalizuj „Maxauthtries" zmienny.
Odkształcić powyższą podświetloną zmienną i ustaw jej wartość zgodnie z wyborem, ponieważ wartość domyślna jest już ustawiona na 6.
Krok 9: Uruchamianie serwera w trybie testowym
Po wykonaniu powyższych kroków nadszedł czas, aby uruchomić Serwer SSH w trybie testowym, aby upewnić się, że powyższe konfiguracje, które wykonaliśmy, są prawidłowe . Aby przetestować Serwer SSH, Uruchom następujące polecenie:
$ sudo sshd -t
Powyższe polecenie nie zawiera żadnego wyjścia, jednak jeśli działa bez błędu, oznacza to, że konfiguracje są prawidłowe.
Krok 10: Przeładowanie serwera SSH
Po skonfigurowaniu Serwer SSH, Nadszedł czas, aby ponownie załadować serwer, aby wprowadzić zmiany w systemie Ubuntu. W tym celu użyj następującego polecenia:
$ Sudo Service Sshd Reload
Zastosuj kroki w celu zabezpieczenia serwera SSH
Po wykonaniu podstawowych kroków w celu skonfigurowania Serwer SSH W Ubuntu, Czas wdrożyć zaawansowane środki w celu dalszego zwiększenia twojego Serwer SSH bezpieczeństwo.
Krok 1: Otwarcie pliku autoryzowanego_keys
Oprócz wdrożenia podstawowego poziomu bezpieczeństwa serwera SSH w pliku konfiguracyjnym, możesz jeszcze bardziej poprawić zabezpieczenia, zabezpieczając każdy klucz SSH osobno. Jednak ten krok wymaga wykonania niektórych sesji SSH w celu wygenerowania klawiszy SSH w pliku. Po niektórych sesjach SSH otwórz plik autoryzacji za pomocą następującego polecenia:
$ sudo nano ~/.ssh/autoryzowane_keys
Powyższy plik będzie zawierał klucze SSH, które wygenerowałeś do tej pory.
Krok 2: Konfiguracje dla poszczególnych kluczy
Po otwarciu autoryzowane_keys Plik możesz teraz mieć pięć opcji, aby osiągnąć bezpieczeństwo zaawansowanego. Te opcje są następujące:
Teraz, jeśli chcesz użyć dowolnej z powyższych opcji dla jednego klucza SSH. Na przykład, jeśli chcesz Przekazywanie bez agentów Opcja dla żądanego klucza SSH, możesz to zrobić za pomocą następującej składni:
bez agentów
W powyższej składni wymień Pożądany Sshkey z faktycznym kluczem przechowywanym w pliku autoryzowanym_keys. Po dokonaniu powyższych zmian możesz zapisać plik i Serwer SSH Automatycznie odczytuje go, ponieważ nie musisz ponownie ładować serwera.
Dzięki temu podejściu będziesz mógł wdrożyć zaawansowane zabezpieczenia dla serwera SSH Ubuntu.
Porady i wskazówki
Oprócz wykonywania podstawowego i zaawansowanego bezpieczeństwa, możesz jeszcze bardziej zabezpieczyć Serwer SSH Za pomocą dodatkowych metod, których szczegóły są następujące:
1: Zachęć zaszyfrowanie danych
Szyfrowanie danych jest jednym z podstawowych aspektów zabezpieczenia twojego Serwer SSH, co może być możliwe tylko wtedy, gdy użyjesz silnego algorytmu szyfrowania. Ten algorytm dodatkowo zwiększy prywatność twoich danych.
2: Utrzymuj swoje oprogramowanie na bieżąco
Powinieneś również upewnić się, że oprogramowanie działa na Serwer SSH jest aktualna, ponieważ zwiększy to bezpieczeństwo twojego serwer. Najnowsza aktualizacja oprogramowania zawiera najnowsze łatki bezpieczeństwa, które pomagają poprawić bezpieczeństwo systemu.
3: Zawsze włącz mechanizm Selinux
Selinux to wzmocniony mechanizm bezpieczeństwa zbudowany specjalnie dla systemów operacyjnych Linux i domyślnie jest już włączony w systemie. Jednak nadal obowiązkowe jest upewnienie się, że ten system jest włączony, aby nic nie wpłynęło Serwer SSH.
4: Wybierz silne hasło
Jeżeli twój Serwer SSH jest zabezpieczony za pomocą hasła, upewnij się, że ustawiłeś silne hasło dla swojego serwera. Silne hasło musi obejmować znaki numeryczne i specjalne, co utrudnia intruzowi łatwe odgadnięcie.
5: Utrzymaj kopię zapasową danych
Powinieneś utrzymać codzienną kopię zapasową swojego Serwer SSH dane mające na celu łatwe odzyskanie utraconych danych uszkodzonych z powodu każdego nieszczęścia. Ta kopia zapasowa pomoże ci również na wypadek, gdyby serwer spadł.
6: Utrzymuj dzienniki kontroli serwera i audyt serwera
Powinieneś także sprawdzić swoje Serwer SSH i audyt dzienników codziennie, ponieważ pomaga to zapobiec jakimkolwiek poważnym problemom w pierwszym zdarzeniu. Dzienniki audytu są bardzo pomocne w instalacji, jeśli coś się dzieje z serwerem SSH, ponieważ możesz łatwo śledzić główną przyczynę problemu w dziennikach audytu i łatwo je naprawić.
Wniosek
Zabezpieczenie twojego Serwer SSH jest jednym z podstawowych wymagań każdego użytkownika Ubuntu, ponieważ uniemożliwia to innym użytkownikom dostęp do danych systemowych. Chociaż ustawienie hasła jest dobrą opcją, możesz dodatkowo zabezpieczyć połączenie SSH za pomocą większego bezpieczeństwa na wysokim poziomie. Poziom bezpieczeństwa SSH różni się w zależności od podstaw do zaawansowanych. Szczegóły obu tych poziomów są omówione w powyższym przewodniku, z kilkoma przydatnymi wskazówkami, aby poprawić Serwer SSH Bezpieczeństwo w Ubuntu.