Zabezpieczanie serwera dedykowanego
Tłumaczenie zostało wygenerowane automatycznie przez system naszego partnera SYSTRAN. W niektórych przypadkach mogą wystąpić nieprecyzyjne sformułowania, na przykład w tłumaczeniu nazw przycisków lub szczegółów technicznych. W przypadku jakichkolwiek wątpliwości zalecamy zapoznanie się z angielską/francuską wersją przewodnika. Jeśli chcesz przyczynić się do ulepszenia tłumaczenia, kliknij przycisk "Zgłóś propozycję modyfikacji" na tej stronie.
Wprowadzenie
Kiedy zamawiasz serwer dedykowany, możesz wybrać dystrybucję lub system operacyjny do pre-instalowania. Serwer jest więc gotowy do użytku po zainstalowaniu serwera. Jednakże, jako administrator, musisz wdrożyć środki gwarantujące bezpieczeństwo i stabilność systemu.
Niniejszy przewodnik wyjaśnia, jak zabezpieczyć serwer oparty na GNU/Linux.
OVHcloud świadczy usługi, za które jesteś odpowiedzialny w związku z ich konfiguracją i zarządzaniem. Jesteś więc odpowiedzialny za ich prawidłowe funkcjonowanie.
Jeśli napotkasz trudności z przeprowadzeniem tych operacji, skontaktuj się z wyspecjalizowanym dostawcą usług i/lub przedyskutuj problem z naszą społecznością użytkowników na stronie https://community.ovh.com/en/. OVHcloud nie może udzielić Ci wsparcia technicznego w tym zakresie.
Wymagania początkowe
- Posiadanie serwera dedykowanego
- Dostęp administratora (sudo) do serwera przez SSH
W praktyce
Pamiętaj, że jest to przewodnik oparty na systemie operacyjnym Ubuntu Server. Niektóre polecenia należy dostosować do używanej dystrybucji, a niektóre z nich wymagają użycia narzędzi zewnętrznych. W razie potrzeby skorzystaj z oficjalnej dokumentacji dotyczącej tych aplikacji.
Jeśli skonfigurujesz Twój pierwszy serwer dedykowany OVHcloud, zapoznaj się z przewodnikiem dotyczącym uruchomienia serwer dedykowany.
Poniższe przykłady zakładają, że jesteś zalogowany jako użytkownik z dużymi uprawnieniami.
Aktualizacja systemu operacyjnego
Producenci dystrybucji i systemów operacyjnych proponują często aktualizacje pakietów ze względów bezpieczeństwa.
Aktualizacja dystrybucji lub systemu operacyjnego jest kluczowa dla zabezpieczenia serwera.
Aktualizacja ta zostanie wykonana w dwóch etapach.
- Aktualizacja listy pakietów:
- Aktualizacja pakietów:
Operacja ta musi być wykonywana regularnie, aby utrzymać system na bieżąco.
Zmień domyślny port SSH
Jedna z pierwszych operacji, jakie należy przeprowadzić na serwerze, to konfiguracja portu wykorzystywanego do nasłuchiwania usługi SSH. Domyślnie jest on zdefiniowany na porcie 22, więc próby włamania na serwerze przez roboty będą wskazywać na ten port jako priorytet. Zmiana tego parametru na inny port to prosty sposób na wzmocnienie ochrony serwera przed automatycznymi atakami.
W tym celu zmodyfikuj plik konfiguracyjny usługi za pomocą wybranego edytora tekstu (nano jest używany w tym przykładzie):
Należy znaleźć następujące lub równoważne linie:
Zamień liczbę 22 na wybrany numer portu.
Pamiętaj, aby nie wpisywać numeru portu już używanego w systemie.
Aby zwiększyć bezpieczeństwo, wprowadź numer 49152 i 65535.
Zapisz i wyjdź z pliku konfiguracyjnego.
Jeśli linia jest "zakomentowana" (tj. poprzedzona znakiem "#"), jak w powyższym przykładzie, należy usunąć znak "#" przed zapisaniem pliku, aby zmiana została uwzględniona. Przykład:
Zrestartuj usługę:
Powinno to wystarczyć do wdrożenia zmian. W przeciwnym razie zrestartuj serwer (sudo reboot).
Dla systemu Ubuntu 23.04 i nowszych wersji
W przypadku najnowszych wersji Ubuntu, konfiguracja SSH jest zarządzana w pliku ssh.socket.
Aby zaktualizować port SSH, edytuj wiersz Listenstream w pliku konfiguracyjnym za pomocą wybranego edytora tekstu (nano użyty w tym przykładzie):
Zapisz zmiany i wykonaj następujące polecenia:
Jeśli włączona jest zapora systemu operacyjnego, upewnij się, że zezwalasz na nowy port w regułach zapory.
Pamiętaj, że podczas każdego zlecenia połączenia SSH z Twoim serwerem należy wskazać nowy port:
Przykład:
Pamiętaj, że modyfikacja domyślnego portu protokołu SSH lub innego protokołu stanowi potencjalne ryzyko. Niektóre usługi nie mogą zostać skonfigurowane i używane z niestandardowymi portami i nie będą działały, jeśli domyślny port zostanie zmodyfikowany.
Utworzenie użytkownika z ograniczonymi prawami
Zadania, które nie wymagają uprawnień root, powinny być wykonywane za pomocą standardowego użytkownika. Więcej informacji znajdziesz w tym przewodniku.
Konfiguracja wewnętrznej zapory sieciowej (iptables)
Dystrybucje GNU/Linux są dostarczane wraz z zaporą sieciową o nazwie iptables. Usługa ta nie posiada domyślnie żadnej aktywnej reguły. Możesz się o tym przekonać, wpisując następującą komendę:
Więcej informacji na temat iptables znajdziesz w naszym przewodniku.
Zalecamy utworzenie reguł firewalla i dostosowanie ich do Twojego trybu użytkowania. Więcej informacji na temat różnych możliwych operacji znajdziesz w oficjalnej dokumentacji dotyczącej używanej dystrybucji.
Zainstaluj Fail2ban
Fail2ban to oprogramowanie zapobiegające włamaniom, które blokuje adresy IP, z których atakujący lub bojownicy próbują dostać się do Twojego systemu.
Pakiet ten jest zalecany, a w niektórych przypadkach nawet niezbędny, do ochrony Twojego serwera przed atakami typu Brute Force lub Denial of Service.
Aby zainstalować pakiet oprogramowania, użyj następującej komendy:
Możesz spersonalizować pliki konfiguracyjne Fail2ban, aby chronić usługi wystawione na działanie publicznego internetu przed próbami wielokrotnego połączenia.
Jak zaleca Fail2ban, utwórz lokalny plik konfiguracyjny Twoich usług kopiując plik "jail.conf":
Następnie otwórz plik za pomocą edytora tekstu:
Pamiętaj, aby przeczytać informacje na górze pliku, w tym komentarze pod [DEFAULT].
Parametry [DEFAULT] są globalne i będą miały zastosowanie do wszystkich usług zdefiniowanych do włączenia (enabled) w tym pliku.
Ważne jest, aby wiedzieć, że ogólne parametry będą brane pod uwagę tylko wtedy, gdy nie ma różnych wartości określonych w sekcjach usług (JAILS) poniżej w pliku.
Poniżej przedstawiamy przykładowe linie pod [DEFAULT]:
Oznacza to, że adres IP, z którego host próbuje się połączyć, zostanie zablokowany przez dziesięć minut po piątej nieudanej próbie rozpoczęcia sesji.
Ponadto wszystkie parametry określone przez [DEFAULT] i w kolejnych sekcjach pozostają wyłączone, chyba że enabled = true zostanie dodany do usługi (wymienione poniżej # JAILS).
Przykładowo, posiadanie następujących linii w sekcji [sshd] aktywuje ograniczenia tylko dla usługi OpenSSH:
W tym przykładzie, jeśli próba połączenia SSH nie powiedzie się trzy razy w ciągu pięciu minut, okres, w którym IP nie będą aktywne, to wynosi 30 minut.
Możesz zmienić "ssh" na rzeczywisty numer portu, jeśli go zmieniłeś.
Najlepsze podejście polega na aktywowaniu Fail2ban tylko w przypadku usług, które są faktycznie wykonywane na serwerze. Każdy spersonalizowany parametr dodany w # JAILS będzie pierwszeństwo przed wartościami domyślnymi.
Po zakończeniu modyfikacji zapisz plik i zamknij edytor.
Zrestartuj usługę, aby upewnić się, że działa ona z zastosowanymi ustawieniami:
Fail2ban ma wiele ustawień i filtrów personalizacji oraz wstępnie zdefiniowanych opcji, np. jeśli chcesz dodać warstwę ochronną do serwera Nginx.
W celu uzyskania dodatkowych informacji oraz uzyskania zaleceń dotyczących Fail2ban zapoznaj się z oficjalną dokumentacją tego narzędzia.
Konfiguracja Network Firewall OVHcloud
Rozwiązania OVHcloud obejmują możliwość aktywacji firewalla w punkcie wejścia infrastruktury, zwanym Network Firewall. Prawidłowa konfiguracja zapory sieciowej pozwala zablokować połączenia jeszcze przed ich wejściem na Twój serwer.
Sprawdź przewodnik “Konfiguracja Network Firewall”, jeśli chcesz włączyć tą opcję.
Tworzenie kopii zapasowej systemu i danych
Pojęcie bezpieczeństwa nie ogranicza się wyłącznie do ochrony systemu przed atakami. Niezwykle istotne jest również zabezpieczenie Twoich danych. Dlatego OVHcloud oferuje bezpłatnie 500 GB przestrzeni dyskowej na kopie zapasowe. Możesz aktywować tę przestrzeń w Panelu klienta i połączyć się z nią, używając następujących protokołów:
- FTP
- FTPS
- NFS
- CIFS
Będziesz potrzebował zewnętrznego rozwiązania do replikacji danych i przesłania ich na przestrzeń dyskową do przechowywania kopii zapasowych.
Więcej informacji o naszych rozwiązaniach do przechowywania kopii zapasowych znajdziesz w przewodniku.
Sprawdź również
Konfiguracja firewalla w systemie Windows
Jeśli potrzebujesz szkolenia lub pomocy technicznej w celu wdrożenia naszych rozwiązań, skontaktuj się z przedstawicielem handlowym lub kliknij ten link, aby uzyskać wycenę i poprosić o spersonalizowaną analizę projektu od naszych ekspertów z zespołu Professional Services.
Przyłącz się do społeczności naszych użytkowników na stronie https://community.ovh.com/en/.
-
Secure Shell (SSH) : un protocole de réseau sécurisé utilisé pour établir des connexions entre un client et un serveur. Il permet d'exécuter des commandes à distance de manière sécurisée. ↩