Każde połączenie proxy wymaga sposobu potwierdzenia, że masz uprawnienia do korzystania z niego. Dwa standardowe podejścia: zarejestruj swoje IP i pomiń dane logowania albo uwierzytelniaj się za pomocą loginu i hasła przy każdym żądaniu.
Uwierzytelnianie wyłącznie po IP sprawdza się świetnie, gdy Twój adres nigdy się nie zmienia. Ale przy domowym łączu, laptopie przełączającym się między sieciami czy VPS z dynamicznym IP — potrzebujesz czegoś, co nie przestaje działać po zmianie adresu. Właśnie do tego służy uwierzytelnianie login/hasło.
Jak działa uwierzytelnianie za pomocą danych logowania
Gdy Twoje oprogramowanie łączy się z proxy, serwer proxy żąda potwierdzenia dostępu. W przypadku uwierzytelniania HTTP proxy klient wysyła nagłówek Proxy-Authorization zawierający nazwę użytkownika i hasło zakodowane w Base64. Proxy sprawdza dane logowania, i jeśli się zgadzają — ruch przechodzi. Oto szybki przykład z curl: curl -x http://username:password@proxy-address:port https://example.com — lub w Python requests: requests.get("https://example.com", proxies={"https": "http://username:password@proxy-address:port"}).
W przypadku uwierzytelniania SOCKS5 za pomocą nazwy użytkownika i hasła proces wygląda nieco inaczej. SOCKS5 obsługuje dane logowania podczas własnego handshake'u — jest to osobny krok przed rozpoczęciem jakiegokolwiek ruchu sieciowego. Klient informuje o zamiarze uwierzytelnienia, przesyła login i hasło, a proxy odpowiada powodzeniem lub odmową. Dopiero po tym nawiązywane jest właściwe połączenie.
Obie metody realizują ten sam cel: udowodnić, że masz prawo korzystać z proxy, niezależnie od tego, z jakiego adresu IP się łączysz.
Dlaczego warto używać danych logowania zamiast samego IP
Tryb wyłącznie po IP jest prostszy — żadnych sekretów, niczego do konfigurowania w oprogramowaniu. Wymaga jednak statycznego publicznego adresu. W momencie, gdy Twój ISP zmieni Twoje IP, dostęp zostaje przerwany, dopóki nie zaktualizujesz białej listy.
Uwierzytelnianie loginem i hasłem eliminuje tę zależność. Twoje dane logowania do proxy działają z dowolnej sieci: z biura, kawiarni czy innego kraju. Dopóki dane logowania są poprawne, a Twoje IP mieści się w podsieci /21 zarejestrowanego adresu, połączenie przechodzi. Większość dostawców proxy ogranicza autoryzację do jednego adresu IP na białej liście lub wąskiego zakresu /32 — podejście FineProxy z podsiecią /21 obejmuje 2 048 adresów, więc dynamiczna rotacja IP prawie nigdy nie zrywa sesji. To poziom elastyczności, który jest rzadkością na rynku.
Ma to znaczenie w przypadku:
- Laptopy i urządzenia przełączające się między sieciami Wi-Fi
- Połączenia domowe, w których ISP codziennie przydziela nowy adres
- Zespoły, w których wiele osób łączy się z różnych lokalizacji
- Pipeline'y CI/CD uruchamiane na instancjach chmurowych ze zmieniającymi się adresami IP
Jak to działa w FineProxy
Rejestracja IP jest obowiązkowa na naszej platformie — to fundament, na którym nasz system identyfikuje klientów. Gdy dodatkowo włączysz uwierzytelnianie loginem i hasłem, proxy akceptuje połączenia z dowolnego adresu IP w obrębie podsieci /21 Twojego zarejestrowanego adresu.
To 2 048 adresów. Większość dostawców internetowych rotuje dynamiczne adresy IP w znacznie węższym zakresie, więc w praktyce Twoje połączenie działa bez żadnych ręcznych aktualizacji.
FineProxy obsługuje uwierzytelnianie za pomocą danych logowania we wszystkich oferowanych protokołach: HTTP, HTTPS i SOCKS5. W przypadku HTTPS każdy adres IP ma własny certyfikat SSL, dzięki czemu szyfrowane połączenie między Twoim klientem a proxy pozostaje bezpieczne nawet przy autoryzacji za pomocą poświadczeń.
Dane logowania są dostępne w panelu natychmiast po zakupie. Format jest prosty: username:password@proxy-address:port dla HTTP/HTTPS lub konfiguracja w ustawieniach autoryzacji Twojego klienta SOCKS5.
Po zakupie dane logowania pojawiają się w Twoim panelu natychmiast — w formacie username:password@address:port, gotowe do wklejenia do przeglądarki, skryptu lub narzędzia do automatyzacji.
Bezpieczeństwo danych logowania
Wadą uwierzytelniania loginem i hasłem jest to, że dane logowania istnieją — a wszystko, co istnieje, może wyciec. Kilka praktycznych zasad:
Używaj zmiennych środowiskowych zamiast wpisywania danych logowania bezpośrednio w skryptach. export HTTPS_PROXY=”http://user:pass@proxy:port” pozwala trzymać hasło poza kodem źródłowym.
Nigdy nie commituj danych logowania do proxy do repozytorium Git. Nawet prywatne repozytoria są udostępniane, klonowane i backupowane w miejscach, nad którymi nie masz kontroli.
Jeśli Twoje narzędzie to obsługuje, pobieraj dane logowania z menedżera sekretów w czasie wykonania, zamiast przechowywać je w plikach konfiguracyjnych.