Linia poleceń · 1 min czytania

Proxychains: Jak łączyć proxy SOCKS5

proxychains-ng wymusza każde programy wiersza poleceń przez jedno lub więcej proxy, nawet narzędzia, które nie mają własnej opcji proxy. Ten przewodnik pokazuje, jak je zainstalować, skonfigurować proxy SOCKS5, łańcuchować wiele skoków i unikać klasycznego błędu wycieku DNS.

Co robi proxychains

proxychains-ng (utrzymywany fork proxychains) to narzędzie, które przechwytuje wywołania sieciowe programu i wymusza ich przejście przez proxy — nawet programy, które nie mają ustawienia proxy. Każde polecenie poprzedzasz proxychains4, a jego połączenia TCP są kierowane przez proxy w twojej konfiguracji. Jest to podstawowe narzędzie w Kali i w procesach pentestingowych, ponieważ działa z narzędziami, które w przeciwnym razie łączyłyby się bezpośrednio.

Obsługuje proxy HTTP, SOCKS4 i SOCKS5, a także może chain kilka z nich, aby twój ruch przechodził przez wiele skoków w kolejności. Jedno ważne ograniczenie, które warto znać z góry: proxychains działa poprzez przechwytywanie wywołań bibliotek, więc wpływa tylko na programy dynamicznie powiązane — statycznie powiązane binaria i niektóre narzędzia omijają to. I kieruje TCP, a nie surowe UDP lub ICMP (więc nie może proxyzować normalnego ping).

Warto zrozumieć trzy tryby łańcuchowe, ponieważ zachowują się one bardzo różnie w przypadku awarii. W strict_chain ruch musi przechodzić przez każde wymienione proxy w dokładnie podanej kolejności, a jeśli któreś z nich jest niedostępne, połączenie się nie udaje — to jest to, czego chcesz, gdy kolejność i każdy skok mają znaczenie. W dynamic_chain proxychains pomija wszelkie martwe proxy i używa reszty w kolejności, co jest bardziej wybaczające dla zawodnych list. W random_chain wybiera losowy podzbiór dla każdego połączenia, co jest przydatne do rozprzestrzeniania ruchu, ale nieprzewidywalne. Cokolwiek wybierzesz, pamiętaj, że każdy dodatkowy skok mnoży opóźnienie i dodaje kolejnego operatora, który może zobaczyć metadane twojego połączenia, więc łańczuj świadomie, a nie gromadź proxy dla niejasnego poczucia dodatkowego bezpieczeństwa.

Zainstaluj i skonfiguruj to

Na Debianie/Ubuntu/Kali; konfiguracja znajduje się w /etc/proxychains4.conf lub ~/.proxychains/proxychains.conf.

Zainstaluj proxychains-ng

Zainstaluj pakiet (apt install proxychains4 na systemach opartych na Debianie lub zbuduj proxychains-ng ze źródła, aby uzyskać najnowszą wersję).

Edytuj konfigurację

Otwórz plik konfiguracyjny. Wybierz tryb łańcucha (strict_chain, dynamic_chain lub random_chain) i, co najważniejsze, włącz proxy_dns, aby kierować DNS przez łańcuch.

Dodaj swój proxy na dole

W sekcji [ProxyList] dodaj swoją linię SOCKS5: typ, host, port oraz, dla proxy z autoryzacją, nazwę użytkownika i hasło. s4m SOCKS5 działa na porcie 1080.

Uruchom polecenie przez to

Prefiksuj każde polecenie proxychains4, na przykład proxychains4 curl https://api.ipify.org, i potwierdź, że adres IP wyjściowy to adres proxy, a nie twój.

Przykład proxychains4.conf

Włącz proxy_dns, aby uniknąć wycieków zapytań, wybierz tryb łańcucha i wymień swoje proxy. W strict_chain ruch przechodzi przez każde proxy w kolejności.

ini
# /etc/proxychains4.conf

# Route all connections through the proxies in ORDER, all must be up:
strict_chain
# (alternatives: dynamic_chain = skip dead ones; random_chain = random subset)

# CRITICAL: resolve DNS through the chain, not your local resolver:
proxy_dns

[ProxyList]
# type   host                 port  user  pass
socks5   proxy.s4m.online     1080  USER  PASS
# Chain a second hop by adding another line below (strict_chain):
# socks5 another.proxy.host   1080  USER2 PASS2

# Usage:
#   proxychains4 curl https://api.ipify.org
#   proxychains4 nmap -sT -Pn target      (TCP connect scan only)
Share this page
FAQ

Pytania, odpowiedzi

Jak zatrzymać proxychains przed wyciekiem DNS?

Włącz opcję proxy_dns w proxychains4.conf. Bez niej, twoje zapytania DNS trafiają do lokalnego resolvera i ujawniają domeny, które odwiedzasz, mimo że połączenia są proxy. Z tą opcją, zapytania są rozwiązywane przez łańcuch proxy.

Czy proxychains może kierować ping lub ruch UDP?

Nie. proxychains działa na poziomie połączenia TCP, przechwytując wywołania bibliotek, więc nie może proxyować surowego ICMP (ping) ani dowolnego UDP. Dotyczy to również tylko programów dynamicznie powiązanych. Użyj pełnego VPN, jeśli musisz przeprowadzać ruch nie-TCP w sposób przezroczysty.

Czy mogę łańcuchować wiele proxy za pomocą proxychains?

Tak. Dodaj kilka linii do sekcji [ProxyList]. W trybie strict_chain twój ruch przechodzi przez wszystkie w kolejności; dynamic_chain pomija te, które są niedostępne; random_chain używa losowego podzbioru. Każdy dodatkowy skok zwiększa opóźnienie, więc łańcuchuj tylko tyle, ile potrzebujesz.

Uzyskaj punkt końcowy SOCKS5 do łańcucha

s4m zapewnia uwierzytelnione proxy SOCKS5 na porcie 1080, gotowe do użycia w proxychains. Płatność metrowa, darmowa lista proxy do testowania, anonimowe konta i płatności kryptowalutowe.

Ludzie znaleźli tę stronę, szukając

Rzeczywiste frazy wyszukiwania, na które ta strona odpowiada — powiązane otwierają stronę, która je szczegółowo omawia.