Czym jest serwer proxy?
Serwer proxy odbiera żądanie od jednej strony i przekazuje je dalej, do innego serwera. Proxy przekazujące (forward proxy) działa w imieniu klienta, a proxy odwrotne (proxy odwrotne) stoi przed jednym lub kilkoma serwerami aplikacji. Proxy może filtrować żądania, buforować odpowiedzi, zarządzać dostępem lub rozkładać obciążenie. To, czy faktycznie pomaga, zależy od konfiguracji i od tego, na ile ufasz jego operatorowi.
Proxy przekazujące i odwrotne
Firma może skonfigurować proxy przekazujące dla komputerów pracowników, aby egzekwować zasady dostępu lub trzymać w pamięci podręcznej często pobierane treści. Serwer docelowy widzi wtedy połączenie od proxy, choć nagłówki aplikacji mogą nadal zdradzać informacje o pierwotnym kliencie. Proxy odwrotne przyjmuje publiczny ruch kierowany do strony i przekazuje go do serwera źródłowego, często kończąc połączenie TLS, rozkładając żądania lub ukrywając adres serwera źródłowego.
Proxy może działać w różnych warstwach protokołów. Proxy HTTP rozumie żądania HTTP, a SOCKS przekazuje połączenia sieciowe w bardziej ogólny sposób. Szczegóły uwierzytelniania, rozwiązywania nazw DNS i obsługiwanych protokołów bywają różne. Sprawdź dokumentację konkretnej usługi, zamiast zakładać, że każde proxy traktuje ruch przeglądarki i innych programów tak samo.
Granice prywatności
Operator proxy przekazującego widzi szczegóły połączeń, a jeśli ruch nie jest szyfrowany od końca do końca – także jego treść. Przy HTTPS zwykłe proxy może widzieć nazwę celu lub metadane połączenia, ale zaszyfrowana zawartość pozostaje chroniona, chyba że klient świadomie ufa certyfikatowi służącemu do przechwytywania ruchu. Serwis docelowy nadal może rozpoznać użytkownika po zalogowaniu na konto, plikach cookie lub cechach przeglądarki.
Proxy nie usuwa logów aktywności przechowywanych przez operatora, serwis docelowy czy dostawcę sieci. Darmowe publiczne proxy bywają zawodne, a nawet wrogie. Nie przesyłaj haseł ani wrażliwych danych przez usługę, której nie ufasz. Jeśli zależy Ci na prywatności, określ, przed kim konkretnie chcesz się chronić, i krytycznie oceń deklaracje operatora dotyczące logowania i jurysdykcji.
Wydajność i niezawodność
Buforowanie może ograniczyć powtórne pobieranie odpowiedzi, które da się przechowywać w pamięci podręcznej, a proxy odwrotne może rozdzielać żądania między kilka serwerów zaplecza. Każdy dodatkowy przeskok może jednak zwiększyć opóźnienie albo stać się pojedynczym punktem awarii. Nieaktualne wpisy w pamięci podręcznej mogą pokazywać stare dane, a źle skonfigurowane nagłówki mogą ujawnić adres klienta lub zepsuć uwierzytelnianie w aplikacji. Po zmianie konfiguracji proxy monitoruj błędy i przetestuj rzeczywistą ścieżkę użytkownika.
W przypadku strony WWW chroń serwer źródłowy odpowiednimi regułami dostępu, weryfikuj tylko zaufane nagłówki przekazywania i zachowuj prawdziwy adres klienta jedynie tam, gdzie jest potrzebny ze względów bezpieczeństwa i operacyjnych. Podrobionego przez klienta nagłówka przekazywania nie wolno traktować jako dowodu tożsamości.
Kiedy warto użyć proxy
Proxy przekazujące sprawdzi się przy określonej polityce firmowej, a odwrotne – przy dostarczaniu stron WWW i zwiększaniu odporności na awarie. Porównaj obsługiwane protokoły, sposób logowania, uwierzytelnianie, limity i zachowanie usługi w razie awarii. Sprawdź dostęp z proxy i bez niego, aby odróżnić problem z proxy od usterki DNS, routingu czy serwera źródłowego.
Proxy, VPN i wycieki danych to osobne kwestie
Proxy skonfigurowane tylko w przeglądarce nie musi przenosić zapytań DNS ani ruchu innych aplikacji. VPN zwykle tworzy szerszy tunel, ale trasy i konfiguracja nadal mają znaczenie. Widoczny adres IP, DNS i mechanizmy przeglądarki sprawdzaj osobno. Przeczytaj też o wyciekach DNS oraz o ujawnianiu adresu IP przez WebRTC.