Podział odpowiedzialności
Na hostingu współdzielonym dostawca odpowiada za system, łatki i izolację kont. Na VPS i serwerze dedykowanym dostawca odpowiada wyłącznie za sprzęt, sieć i to, żeby maszyna się włączyła. Wszystko powyżej - jądro, pakiety, konfiguracja, aktualizacje, firewall - jest po Twojej stronie od pierwszego dnia. To najczęstszy powód, dla którego trafiają do nas serwery z jądrem sprzed trzech lat.
Izolacja kont na hostingu współdzielonym
Pytanie, które warto zadać: czy procesy jednego konta widzą pliki innego. W źle skonfigurowanym środowisku jedna zaniedbana instalacja CMS-a wystarczy, żeby napastnik przeszedł po katalogach sąsiadów. Dobry hosting izoluje konta na poziomie użytkownika systemowego i ogranicza dostęp do katalogów spoza własnego.
Co sprawdzamy, przejmując serwer
- logowanie na roota hasłem - wyłączamy, zostawiamy klucze
- usługi wystawione publicznie, które nie muszą takie być: bazy danych, panele, Redis, porty zarządzania
- wersje pakietów i to, czy w ogóle jest źródło aktualizacji bezpieczeństwa
- reguły firewalla - zwykle albo ich nie ma, albo są sprzed dwóch migracji
- konta użytkowników, którzy już nie pracują w firmie
- uprawnienia plików w katalogu strony, szczególnie zapisywalne katalogi z kodem
Aktualizacje to proces, nie jednorazowa akcja
Serwer, na którym aktualizacje wykonuje się raz do roku w panice, jest mniej stabilny niż serwer aktualizowany co tydzień. Duże skoki wersji łamią zależności, małe kroki prawie nigdy. U nas aktualizacje bezpieczeństwa idą w cyklu tygodniowym, a zmiany, które mogą wymagać restartu usługi, planujemy w oknie serwisowym.
Logi, o których nikt nie pamięta
Bez logów nie odtworzysz przebiegu włamania i nie udowodnisz, kiedy się zaczęło. Logi powinny mieć sensowną retencję i najlepiej trafiać poza serwer, bo napastnik, który uzyskał roota, zaczyna od ich czyszczenia. Alert na nietypowy wzorzec w logach - seria nieudanych logowań, nagły wysyp błędów 500 - jest tańszy niż odtwarzanie serwisu po fakcie.