Hald debuggarforbindinga til PyCharm utanfor proxykjeda
Pakk den valde Python-tolken for Proxychains og hald på argumenta og ein direkte loopback-rute til debuggeren.
Proxychains rundt ein Python-feilsøkingsprosess kan fanga to ulike samband: den utgåande tenestesambandet til skriptet og det lokale sambandet tilbake til PyCharm. Debuggeren treng at det siste blir lokalt.
Der IDE-en og verten støttar ei tolkeinnpakning, peik ho mot den faktiske tolken i prosjektet:
#!/bin/sh
exec /usr/bin/proxychains4 -f /home/alex/proxychains-debug.conf "/home/alex/project/.venv/bin/python" "$@"Byt ut begge banane til dei køyrbare filene og konfigurasjonsbanen. Videresending av "$@" held på dei individuelle debuggerargumenta frå IDE-en. exec hindrar at den starta prosessen lèt etter seg eit unødvendig innpakningsskal mellom IDE-en og barnet sitt.
I den dedikerte Proxychains-konfigurasjonen held du på den tiltenkte kjeda og legg til det relevante direkte loopback-unntaket:
localnet 127.0.0.0/255.0.0.0
localnet ::1/128Desse reglane går utanom kjeda for numeriske loopback-mål. Den medfølgjande oppstraums-konfigurasjonen dokumenterer avgrensingar for vertsnavnmatching med proxy_dns, så føretrekk den faktiske numeriske loopback-adressa til debuggeren når den vegen blir diagnostisert. Ikkje legg subnettet for ekstern DNS-mapping innanfor same utelukka område.
Hald på identiteten til tolken
Bruk av /usr/bin/python3 i innpakninga kan stille velja eit anna miljø frå .venv i prosjektet. Manglande pakkar ser då ut som ein proxyrelatert feil, sjølv om ein annan tolk vart starta.
Proxychains byggjer på støtta avskjering av dynamiske bibliotek. Ein IDE som avviser ei innpakning som tolk, ein verna macOS-prosess eller ein statisk lenkja nettverksklient er eit eige kompatibilitetsvilkår. Avgrens ordninga til den tiltenkte Python-prosessen og stadfest den valde tolken i konfigurasjonen til IDE-en.