Kekalkan Sambungan Debugger PyCharm di Luar Rantaian Proksi
Balut jurubahasa Python yang dipilih untuk Proxychains sambil mengekalkan argumen dan laluan loopback terus ke debugger.
Proxychains di sekeliling proses nyahpepijat Python boleh menangkap dua sambungan berbeza: sambungan perkhidmatan keluar skrip dan sambungan tempatannya kembali ke PyCharm. Debugger memerlukan yang kedua kekal setempat.
Jika IDE dan hos menyokong pembalut jurubahasa, halakan ia ke jurubahasa sebenar projek:
#!/bin/sh
exec /usr/bin/proxychains4 -f /home/alex/proxychains-debug.conf "/home/alex/project/.venv/bin/python" "$@"Gantikan kedua-dua laluan fail boleh laku dan laluan konfigurasi. Menghantar "$@" mengekalkan argumen debugger individu daripada IDE. exec menghalang proses yang dilancarkan daripada meninggalkan shell pembalut yang tidak perlu antara IDE dan anaknya.
Dalam konfigurasi Proxychains khusus itu, kekalkan rantaian yang dimaksudkan dan tambah pengecualian loopback terus yang berkaitan:
localnet 127.0.0.0/255.0.0.0
localnet ::1/128Peraturan ini memintas rantaian untuk destinasi loopback berangka. Konfigurasi huluan yang dibekalkan mendokumenkan sekatan padanan nama hos dengan proxy_dns, jadi semasa mendiagnosis laluan itu utamakan alamat loopback berangka sebenar debugger. Jangan letakkan subrangkaian pemetaan DNS jauh dalam julat yang dikecualikan sama.
Kekalkan identiti jurubahasa
Menggunakan /usr/bin/python3 dalam pembalut boleh memilih persekitaran lain daripada .venv projek secara senyap. Pakej yang hilang kemudian kelihatan seperti kegagalan berkaitan proksi walaupun jurubahasa lain dimulakan.
Proxychains bergantung pada pintasan pustaka dinamik yang disokong. IDE yang menolak pembalut sebagai jurubahasa, proses macOS yang dilindungi atau klien rangkaian yang dipautkan secara statik ialah syarat keserasian berasingan. Hadkan susunan kepada proses Python yang dimaksudkan dan sahkan jurubahasa yang dipilih dalam konfigurasi IDE.