Python-ийг дебаглэх процессийн эргэн тойрон дахь Proxychains хоёр өөр холболтыг барьж болно: скриптийн гадагш чиглэсэн үйлчилгээний холболт ба PyCharm руу буцах локал холболт. Дебаггер хоёр дахь нь локал хэвээр байхыг шаарддаг.

IDE болон хост интерпретаторын бүрхүүлийг дэмждэг бол түүнийг төслийн бодит интерпретатор руу чиглүүлнэ:

#!/bin/sh
exec /usr/bin/proxychains4 -f /home/alex/proxychains-debug.conf "/home/alex/project/.venv/bin/python" "$@"

Гүйцэтгэх файлын хоёр замыг болон тохиргооны замыг соль. "$@" дамжуулах нь IDE-ийн тусдаа дебаггер аргументуудыг хадгална. exec нь эхлүүлсэн процессийг IDE болон түүний хүүгийн хооронд шаардлагагүй бүрхүүл shell үлдээхээс сэргийлнэ.

Тухайн тусгай Proxychains тохиргоонд зорьсон хэлхээг хадгалж, холбогдох шууд loopback үл хамаарах дүрмийг нэмнэ:

localnet 127.0.0.0/255.0.0.0
localnet ::1/128

Эдгээр дүрэм тоон loopback очих газруудад хэлхээг тойрч гарна. Өгөгдсөн дээд түвшний тохиргоо нь proxy_dns-тэй хост нэрийг тааруулах хязгаарлалтыг баримтжуулдаг тул тэр замыг оношлохдоо дебаггерийн бодит тоон loopback хаягийг илүүд үзнэ. Алсын DNS зураглалын дэд сүлжээг мөн адил хасагдсан мужид бүү байрлуул.

Интерпретаторын таних тэмдгийг хадгал

Бүрхүүлд /usr/bin/python3 ашиглах нь төслийн .venv-ээс өөр орчинг чимээгүй сонгож болно. Тэгвэл дутуу багцууд прокситой холбоотой алдаа мэт харагдана, гэхдээ өөр интерпретатор эхэлсэн байна.

Proxychains нь дэмжигдсэн динамик номын сангийн саатуулалтд тулгуурладаг. IDE бүрхүүлийг интерпретатор гэж хүлээж авахгүй байх, хамгаалагдсан macOS процесс эсвэл статикаар холбогдсон сүлжээний клиент нь тусдаа нийцтэй байдлын нөхцөл юм. Зохицуулалтыг зорьсон Python процессоор хязгаарлаж, сонгосон интерпретаторыг IDE-ийн тохиргоонд шалгана.

Холбоотой нийтлэлүүд