ZALOGUJ
    opened image

    Użycie chmurowego VPS wymaga szczególnej uwagi na kwestie bezpieczeństwa, ponieważ serwery w chmurze są stale zagrożone przez cyberprzestępców. Ataki cybernetyczne na serwery mogą prowadzić do wycieku danych, usunięcia informacji, zablokowania serwera, a nawet do wykorzystania zasobów VPS do przeprowadzania ataków na inne systemy. Aby zrozumieć, jak ważne jest bezpieczeństwo VPS, rozważmy niektóre podstawowe typy zagrożeń:

    1. Ataki DDoS (Distributed Denial of Service): Serwer jest przeciążany wieloma żądaniami, co prowadzi do jego niedostępności dla użytkowników i strat finansowych dla firmy.

    2. Ataki brute force: Cyberprzestępcy próbują odgadnąć login i hasło, aby uzyskać nieautoryzowany dostęp, co może prowadzić do całkowitego przejęcia systemu.

    3. Malware i rootkity: Po włamaniu się na serwer przez luki w zabezpieczeniach, cyberprzestępcy instalują złośliwe oprogramowanie, które może wykonywać ukryte działania (zbieranie danych, wysyłanie spamu, uruchamianie ataków na inne serwery).

     

     

    Można uniknąć tych zagrożeń dzięki odpowiedniej konfiguracji i kompleksowemu podejściu do bezpieczeństwa. W artykule omówimy, jak prawidłowo skonfigurować SSH, zaporę sieciową, wdrożyć uwierzytelnianie dwuskładnikowe i wykorzystać inne środki ochrony.

     

    Podstawowe środki bezpieczeństwa dla chmurowego VPS

     

    1. Konfiguracja protokołu sieciowego SSH

    SSH — główny sposób zarządzania serwerem i "Instalacja i użycie protokołu SSH na Ubuntu 24.04 LTS", ale jego standardowe ustawienia czynią serwer podatnym na ataki. Ochronę połączenia z serwerem można zapewnić, podejmując określone środki bezpieczeństwa.

    Zmiana standardowego portu SSH
    Standardowy port 22 dla SSH jest często skanowany przez cyberprzestępców. Aby zmniejszyć liczbę ataków na serwer, zaleca się rezygnację z używania portu SSH i jego zamianę.

    Wprowadź niezbędne zmiany w pliku sshd_config, aby zmienić port SSH:
    sudo nano /etc/ssh/sshd_config

    W dokumencie konfiguracyjnym należy znaleźć linię z #Port 22 i ustawić inną wartość, na przykład 2200. Zapisz zmiany i uruchom ponownie usługę SSH:
    sudo systemctl restart ssh

     

     

    • Wyłączenie dostępu przez hasło
      Znacznie poprawia proces pracy wdrożenie i zastosowanie kluczy SSH, które zastępują klasyczne hasła, ponieważ klucze są trudne do odgadnięcia metodą brute force. Aby skonfigurować, zapoznaj się z opisanymi poniżej działaniami:
      Tworzenie klucza:
      ssh-keygen -t rsa -b 4096
      Utworzenie na serwerze duplikatu klucza:
      ssh-copy-id user@server_ip
      Dezaktywacja systemu haseł:
      sudo nano /etc/ssh/sshd_config
      Ustaw PasswordAuthentication na no, a następnie uruchom ponownie protokół sieciowy.

    • Użycie adresów IP do ograniczenia dostępu
      Należy używać ustawień zapory sieciowej lub plików konfiguracyjnych /etc/hosts.allow i /etc/hosts.deny, aby zastosować konfiguracje, które pozwolą na dostęp do SSH tylko dla określonych adresów IP.

     

    2. Użycie silnych haseł

     

    Skomplikowane hasła, zawierające co najmniej 12 znaków, znaki specjalne i litery w różnych rejestrach, zwiększają odporność, odgrywając kluczową rolę w ochronie przed atakami brute force. Zaleca się korzystanie z menedżerów haseł, aby uniknąć zapamiętywania skomplikowanych kombinacji.

     

    3. Uwierzytelnianie dwuskładnikowe

     

    Aby zapewnić wyższy poziom bezpieczeństwa, należy skonfigurować uwierzytelnianie dwuskładnikowe (2FA). Doda to dodatkowy poziom ochrony, wymagając nie tylko hasła, ale także jednorazowego kodu generowanego przez aplikację na twoim telefonie.

    Zainstaluj bibliotekę:
    sudo apt install libpam-google-authenticator

     

     

    Skonfiguruj uwierzytelnianie za pomocą Google Authenticator:
    google-authenticator

     

     

    Skanuj kod QR aplikacją i postępuj zgodnie z instrukcjami. Zrzut ekranu powyżej ma na celu pokazanie, jak to będzie wyglądać i był wykonany w środowisku testowym.

     

    4. Inne środki bezpieczeństwa

    Ograniczenie uprawnień dostępu: Twórz oddzielnych użytkowników z ograniczonymi uprawnieniami i używaj sudo tylko w razie potrzeby.

    Aktualizacja oprogramowania: Stare wersje oprogramowania mogą zawierać luki, które cyberprzestępcy mogą wykorzystać do włamania się na serwer. Regularne aktualizowanie wszystkich pakietów zmniejsza takie ryzyko:
    sudo apt update && sudo apt upgrade

    Monitorowanie logów: Logi zawierają ważne informacje o podejrzanej aktywności na serwerze. Używaj narzędzi fail2ban i logwatch do automatycznego monitorowania i powiadamiania o podejrzanej aktywności.

     

    Konfiguracja zapory sieciowej

     

    Zapora sieciowa, znana również jako firewall, jest pierwszą linią obrony, zapobiegającą nieautoryzowanemu dostępowi do twojego serwera. Można skorzystać z narzędzia ufw (Uncomplicated Firewall), które można stosować jako zaporę sieciową. Charakteryzuje się ono prostotą w konfiguracji i zarządzaniu.

     

    1. Instalacja i uruchomienie narzędzia

    W przypadku braku zainstalowanej wersji, zainstaluj i aktywuj ufw:

    sudo apt install ufw


     

    sudo ufw enable

     

    2. Otwieranie dostępu przez SSH

    Umożliw dostęp do SSH na wybranym porcie, aby uniknąć utraty połączenia z serwerem:

    sudo ufw allow 2200/tcp  # Podaj swój niestandardowy port

     

    3. Konfiguracja reguł dostępu

    Po skonfigurowaniu SSH można zezwolić na dostęp do innych usług, takich jak HTTP i HTTPS:

    sudo ufw allow 80/tcp

    sudo ufw allow 443/tcp

     

    4. Blokowanie wszystkich innych połączeń

    Aby wzmocnić ochronę, całkowicie zablokuj przychodzące połączenia, z wyjątkiem tych, którym wyraźnie udzieliłeś zezwolenia:

    sudo ufw default deny incoming

    sudo ufw default allow outgoing

     

    5. Analiza i ocena norm

    Możliwość zapoznania się z obowiązującymi zasadami zapory i potwierdzenia, że wszystkie konfiguracje działają poprawnie, daje polecenie ufw status:

    sudo ufw status


     

    Nadzór i ocena środków bezpieczeństwa

    Ciągłe przeprowadzanie kontroli i nadzoru nad bezpieczeństwem pomaga uniknąć incydentów, zapobiegając wyrządzeniu szkód.

     

    Jak pracować z fail2ban
    Narzędzie fail2ban automatycznie ogranicza dostęp adresów IP, które wykonują podejrzane działania, takie jak wielokrotne nieudane logowania. Zainstaluj narzędzie:
    sudo apt install fail2ban


     

    Przygotuj plik konfiguracyjny i ustaw parametry blokady:


    sudo nano /etc/fail2ban/jail.local

    Ustaw niezbędne konfiguracje dla SSH, HTTP i innych usług.

     

    Monitorowanie logów za pomocą logwatch


    logwatch — narzędzie, które pozwala na otrzymywanie raportów o podejrzanej aktywności na serwerze. Zainstaluj logwatch:
    sudo apt install logwatch


     

     

     

    1. Aby monitorować aktywność na serwerze, warto skonfigurować codzienne raporty na email.

    2. Kopia zapasowa danych
      Aby chronić swoje pliki przed cyberatakami lub błędami administratora, niezwykle przydatne jest regularne tworzenie kopii zapasowych wszystkich niezbędnych danych. Aby skonfigurować automatyczne kopie zapasowe, można skorzystać z rsync, cron oraz chmurowych usług przechowywania.

     

     

    Podsumowanie

    Korzystając z omówionych metod, można znacznie wzmocnić ochronę VPS i zmniejszyć ryzyko. Fundamentalnymi, ale nie wyczerpującymi środkami zapewnienia bezpieczeństwa będą instalacja uwierzytelniania dwuskładnikowego, stosowanie skomplikowanych haseł oraz konfiguracja SSH. Konfiguracja zapory ogranicza dostęp tylko do potrzebnych portów, zapobiegając nieautoryzowanemu połączeniu, a takie narzędzia jak fail2ban i logwatch pomogą w terminowym wykrywaniu podejrzanych działań i zapobieganiu prób intruzji.

    Warto również pamiętać o regularnym tworzeniu kopii zapasowych danych. Niezależnie od tego, jak dobrze zabezpieczony jest twój system, zawsze istnieje szansa, że serwer napotka atak. W takich przypadkach kopie zapasowe będą nieocenioną pomocą w szybkim przywracaniu systemu i minimalizowaniu szkód. Nie zapominaj okresowo przeglądać i aktualizować swoje ustawienia bezpieczeństwa zgodnie z aktualnymi zagrożeniami. Współczesne cyberataki stają się coraz bardziej wyrafinowane, a tylko stała uwaga na bezpieczeństwo pozwoli chronić twój VPS i dane na nim.

    Aby wzmocnić swoją ochronę, staraj się być na bieżąco z nowymi lukami i trendami w dziedzinie cyberbezpieczeństwa. Wykorzystanie tych zaleceń w całości tworzy potężną strategię ochrony i zapewnia stabilną i bezpieczną pracę twojego serwera, niezależnie od tego, do jakich zadań go używasz.