Mantén a conexión do depurador de PyCharm fóra da cadea do proxy
Envolve o intérprete de Python seleccionado para Proxychains conservando os argumentos e unha ruta loopback directa ao depurador.
Proxychains arredor dun proceso de depuración de Python pode capturar dúas conexións diferentes: a conexión de servizo saínte do script e a súa conexión local de volta a PyCharm. O depurador necesita que a segunda quede local.
Onde o IDE e o host admiten un envoltorio de intérprete, apúntao ao intérprete real do proxecto:
#!/bin/sh
exec /usr/bin/proxychains4 -f /home/alex/proxychains-debug.conf "/home/alex/project/.venv/bin/python" "$@"Substitúe as dúas rutas dos executables e a ruta de configuración. Reenviar "$@" conserva os argumentos individuais do depurador do IDE. exec evita que o proceso lanzado deixe unha shell de envoltorio innecesaria entre o IDE e o seu fillo.
Nesa configuración dedicada de Proxychains, mantén a cadea prevista e engade a excepción directa de loopback correspondente:
localnet 127.0.0.0/255.0.0.0
localnet ::1/128Estas regras saltan a cadea para destinos numéricos de loopback. A configuración de orixe subministrada documenta restricións para a coincidencia de nomes de host con proxy_dns, así que, ao diagnosticar esa ruta, prefire o enderezo numérico real de loopback do depurador. Non coloques a subrede de mapado DNS remoto dentro do mesmo rango excluído.
Conserva a identidade do intérprete
Usar /usr/bin/python3 no envoltorio pode seleccionar silenciosamente outro contorno do .venv do proxecto. Entón os paquetes que faltan parecen un fallo relacionado co proxy, aínda que se iniciou outro intérprete.
Proxychains baséase na intercepción admitida de bibliotecas dinámicas. Que un IDE rexeite un envoltorio como intérprete, un proceso protexido de macOS ou un cliente de rede ligado estáticamente é unha condición de compatibilidade aparte. Limita a disposición ao proceso de Python previsto e verifica o intérprete seleccionado na configuración do IDE.