Reverse proxy

Kasia Bielawska
>
Kasia Bielawska

Co to jest reverse proxy?

Reverse proxy (odwrócony serwer pośredniczący) to serwer, który znajduje się przed serwerami WWW i przekazuje żądania klientów (np. przeglądarek internetowych) do odpowiedniego serwera wewnątrz sieci. Choć dla użytkownika końcowego proces ten jest całkowicie niewidoczny, odgrywa on kluczową rolę w nowoczesnej architekturze sieciowej.

W przeciwieństwie do zwykłego proxy (forward proxy), które chroni użytkowników wychodzących do internetu, reverse proxy chroni i optymalizuje pracę serwerów backendowych. Gdy wpisujesz adres strony w przeglądarce, Twoje zapytanie najpierw trafia do odwróconego proxy, które decyduje, gdzie je dalej skierować.

Jakie korzyści daje stosowanie Reverse proxy?

  • Obsługa certyfikatów: To tutaj najczęściej odbywa się szyfrowanie danych przez ssl. Zdejmuje to obowiązek szyfrowania z serwerów aplikacji, co poprawia ich ogólną wydajność.
  • Równoważenie obciążenia (Load balancing): Reverse proxy może rozdzielać ruch między kilka serwerów, zapobiegając przeciążeniu jednego z nich. Jeśli jeden serwer ulegnie awarii, proxy skieruje ruch do działających jednostek.
  • Zwiększone bezpieczeństwo: Dzięki temu rozwiązaniu Twój właściwy serwer z danymi nie jest bezpośrednio wystawiony na działanie internetu. Jego wewnętrzny adres IP pozostaje ukryty, co utrudnia ataki typu DDoS.
  • Przyspieszenie działania (Cache): Odwrócone proxy może przechowywać statyczne elementy strony (np. zdjęcia czy pliki CSS) w pamięci cache, dzięki czemu serwer główny jest mniej obciążony.

Czym różni się Load balancer od Reverse proxy?

Każdy load balancer pełni funkcję odwróconego proxy, ale nie każde reverse proxy musi być load balancerem. Reverse proxy może służyć tylko do zabezpieczania strony lub obsługi certyfikatów na jednym serwerze, podczas gdy load balancer zawsze rozdziela ruch na co najmniej dwa urządzenia.