webh.pl

Pierwsze kroki i zabezpieczenie VPS

Co zrobić zaraz po zakupie VPS: aktualizacja systemu, użytkownik z sudo, klucze SSH, firewall, strefa czasowa, ochrona przed atakami i kopie zapasowe.

  • czytania
  • Zaktualizowano:
Bezpieczeństwo SSH
Serwery VPS

Świeży VPS to czysty system, na którym masz pełną kontrolę, a wraz z nią odpowiedzialność za bezpieczeństwo serwera. Zanim postawisz na nim strony czy aplikacje, warto poświęcić kilkanaście minut na wstępne zabezpieczenie, które zamyka najczęstsze drogi ataku. Ten poradnik prowadzi przez te kroki po kolei, a do głębszej konfiguracji odsyła do artykułów szczegółowych.

Krok 1: Zaloguj się przez SSH

Dane do pierwszego logowania (adres IP, użytkownik root i hasło) znajdziesz przy usłudze. Połącz się z serwerem przez SSH, jak opisujemy w artykule o dostępie do VPS. Z systemu Windows użyjesz klienta SSH (np. wbudowanego w terminal lub PuTTY), z macOS i Linuksa terminala.

Wskazówka

Jeśli wolisz zacząć od świeżego, wybranego przez siebie systemu, najpierw przeinstaluj go z szablonu, jak opisujemy w artykule o reinstalacji VPS. Dopiero potem przejdź do poniższych kroków.

Krok 2: Zaktualizuj system

Pierwsza rzecz na nowym serwerze to instalacja dostępnych aktualizacji. Zamykają one znane luki, które istnieją od momentu wydania obrazu systemu.

# Debian / Ubuntu
sudo apt update && sudo apt upgrade -y

# AlmaLinux / Rocky Linux
sudo dnf upgrade -y

Krok 3: Utwórz użytkownika z uprawnieniami sudo

Codzienna praca na koncie root jest ryzykowna, bo każda pomyłka działa z najwyższymi uprawnieniami. Utwórz zwykłego użytkownika i nadaj mu prawo do podnoszenia uprawnień przez sudo:

# Debian / Ubuntu
adduser nazwa
usermod -aG sudo nazwa

# AlmaLinux / Rocky Linux
adduser nazwa
passwd nazwa
usermod -aG wheel nazwa

Od tej pory loguj się na to konto, a polecenia administracyjne poprzedzaj sudo.

Krok 4: Zabezpiecz logowanie SSH

Logowanie SSH to najczęściej atakowany punkt serwera. Dwie zmiany znacząco je utwardzają:

  • Logowanie kluczem SSH zamiast hasła. Klucz jest praktycznie niemożliwy do odgadnięcia, w przeciwieństwie do hasła. Wygeneruj go na swoim komputerze i wgraj na serwer, a następnie wyłącz logowanie hasłem.
  • Wyłączenie logowania na konto root przez SSH, tak by łączyć się tylko na konto użytkownika z sudo.

Wskazówka

Po zmianach w SSH otwórz drugie połączenie i sprawdź, czy logowanie kluczem działa, zanim zamkniesz pierwsze. A gdyby coś wymagało poprawki, zawsze zalogujesz się przez awaryjną konsolę VNC w panelu, niezależnie od ustawień SSH i firewalla. Opisujemy ją w artykule o dostępie do VPS.

Pełną konfigurację kluczy i utwardzania SSH opisujemy w artykule o firewallu i utwardzaniu SSH.

Krok 5: Włącz firewall

Firewall przepuszcza ruch tylko na portach, których faktycznie używasz, a resztę blokuje. Po zalogowaniu otwórz porty potrzebne do pracy (SSH oraz, dla stron, 80 i 443):

# Ubuntu / Debian (UFW)
sudo ufw allow OpenSSH
sudo ufw allow 80
sudo ufw allow 443
sudo ufw enable

Konfigurację firewalla (UFW oraz firewalld) opisujemy szczegółowo w artykule o firewallu na VPS.

Informacja

Przepuść port SSH (domyślnie 22), zanim włączysz firewall, żeby nie tracić zdalnego połączenia. Gdyby reguła mimo to zablokowała SSH, poprawisz ją przez konsolę VNC dostępną w panelu.

Krok 6: Ustaw strefę czasową i nazwę hosta

Poprawna strefa czasowa porządkuje wpisy w logach i działanie zaplanowanych zadań. Ustawisz ją zgodnie z artykułem o strefie czasowej na VPS. Przy okazji warto nadać serwerowi czytelną nazwę hosta poleceniem hostnamectl set-hostname nazwa.

Krok 7: Dołóż ochronę przed atakami na logowanie

Narzędzie typu fail2ban obserwuje próby logowania i blokuje adresy IP, które wielokrotnie podają błędne dane. Skutecznie zatrzymuje to automatyczne ataki siłowe na SSH i inne usługi. Instalację i konfigurację opisujemy w artykule o fail2ban na VPS.

Krok 8: Włącz automatyczne aktualizacje bezpieczeństwa

Aby serwer sam instalował poprawki bezpieczeństwa, włącz automatyczne aktualizacje. Na Debianie i Ubuntu służy do tego pakiet unattended-upgrades, na systemach z rodziny RHEL dnf-automatic. Dzięki temu znane luki zamykają się bez Twojego udziału.

Krok 9: Zadbaj o kopie zapasowe

Zabezpieczenie serwera obejmuje też plan na czarną godzinę. Jak działają kopie zapasowe na VPS, opisujemy w artykule o kopiach VPS, a własne kopie warto dodatkowo wypychać poza serwer, na przykład na Nextcloud przez rclone.

Co dalej

Po wstępnym zabezpieczeniu serwer jest gotowy na właściwą pracę:

Za bezpieczeństwo serwera odpowiadasz samodzielnie, o czym piszemy w artykule o bezpieczeństwie i odpowiedzialności na VPS.

Najczęstsze pytania

Czy muszę robić to wszystko od razu?

Najpilniejsze są aktualizacja systemu, użytkownik z sudo, utwardzenie SSH i firewall. To one zamykają najczęstsze drogi ataku. Pozostałe kroki możesz wykonać zaraz po nich, zanim wystawisz serwer do realnego ruchu.

Czy mogę pracować na koncie root?

Lepiej nie. Utwórz zwykłego użytkownika z prawem do sudo i loguj się na niego. Praca na root sprawia, że każda pomyłka działa z najwyższymi uprawnieniami, a samo konto root jest najczęstszym celem ataków.

Po co klucz SSH, skoro mam silne hasło?

Klucz SSH jest praktycznie niemożliwy do odgadnięcia, a logowanie kluczem pozwala całkowicie wyłączyć logowanie hasłem. To zamyka drogę atakom siłowym, które nieprzerwanie próbują haseł do SSH.

Coś poszło nie tak z SSH lub firewallem, jak odzyskać dostęp?

Skorzystaj z awaryjnej konsoli VNC w panelu, która łączy się z serwerem niezależnie od SSH i firewalla. Opisujemy ją w artykule o dostępie do VPS. Z jej poziomu poprawisz konfigurację i przywrócisz zdalny dostęp.