THM - Działanie stron WWW
W kolejnym module ścieżki sieciowej na platformie TryHackMe poznajemy podstawy działania stron WWW oraz komponenty infrastruktury dbające o ich dostępność, wydajność i bezpieczeństwo.
Gdy wpisujesz adres strony w przeglądarce, wysyła ona zapytanie do serwera WWW. Serwer ten to komputer przeznaczony do obsługi żądań sieciowych, który odsyła dane potrzebne przeglądarce do wyświetlenia witryny.
Komponenty strony internetowej
Każda witryna składa się z dwóch głównych warstw odpowiadających za przetwarzanie i prezentację danych:
- Część kliencka (Front End / Client-Side) – sposób, w jaki przeglądarka renderuje witrynę oraz prezentuje treści użytkownikowi.
- Część serwerowa (Back End / Server-Side) – serwer, który przetwarza nadesłane żądanie, wykonuje wymaganą logikę i generuje odpowiedź.
Load Balancing
Gdy ruch na stronie rośnie lub aplikacja musi działać bez przerw, pojedynczy serwer WWW przestaje wystarczać. Rozwiązaniem jest zastosowanie load balancera, który rozdziela ruch i zabezpiecza działanie usługi na wypadek awarii pojedynczej maszyny.
Load balancer odbiera przychodzące zapytanie jako pierwszy, po czym przekazuje je do jednego z serwerów w klastrze. Do wyboru serwera stosuje różne algorytmy:
- Algorytm karuzelowy (Round-robin) – wysyła zapytania kolejno do każdego serwera w puli.
- Algorytm ważony (Weighted) – sprawdza liczbę zapytań obsługiwanych w danej chwili przez poszczególne maszyny i kieruje ruch do najmniej obciążonego serwera.
Load balancer wykonuje także regularne testy sprawności (health check). Jeśli serwer nie odpowiada prawidłowo, load balancer przestaje kierować do niego ruch do momentu odzyskania sprawności. Chroni to użytkowników przed przerwami w dostępie do usługi.
CDN
Sieć dostarczania treści (Content Delivery Network, CDN) pozwala ograniczyć obciążenie głównego serwera w przypadku witryn o dużym natężeniu ruchu. Rozwiązanie to opiera się na utrzymywaniu kopii plików statycznych – takich jak skrypty JavaScript, arkusze CSS, grafiki oraz wideo – na tysiącach serwerów rozproszonych na całym świecie.
Podczas pobierania zasobu CDN ustala, który serwer znajduje się fizycznie najbliżej użytkownika, i to z niego przesyła plik. Skraca to czas ładowania witryny i zmniejsza opóźnienia sieciowe.
WAF
Zapora aplikacji internetowych (Web Application Firewall, WAF) działa pomiędzy zapytaniem użytkownika a serwerem docelowym. Jej główną rolą jest ochrona serwera WWW przed atakami i próbami zakłócenia ciągłości działania (odmowy usługi).
WAF filtruje ruch przy użyciu kilku mechanizmów:
- Wykrywanie technik ataków (Attack detection) – weryfikacja zapytań pod kątem popularnych metod ataków oraz sprawdzanie, czy połączenie pochodzi z prawdziwej przeglądarki, czy ze zautomatyzowanego bota.
- Ograniczanie częstotliwości zapytań (Rate limiting) – kontrola liczby zapytań dopuszczalnych z jednego adresu IP w ciągu sekundy, co chroni serwer przed przeciążeniem.
Jeśli zapytanie zostanie zakwalifikowane jako potencjalny atak, WAF natychmiast je odrzuca i nie przekazuje do serwera WWW. Zapobiega to marnowaniu zasobów obliczeniowych i chroni witrynę przed naruszeniem bezpieczeństwa.