Tecnología · GUÍA PRÁCTICA
¿pip muestra CERTIFICATE_VERIFY_FAILED? Demuestra la ruta de confianza antes de omitir TLS
Identifica el Python exacto, la configuración de pip, el emisor del proxy y la fuente de CA; repara la capa mínima y verifica la solicitud sin excepciones.

Un fallo TLS de pip no es un solo problema con un comando universal. El mismo error puede venir del intérprete equivocado, una configuración oculta, un proxy de inspección, una cadena CA incompleta, un backend antiguo o un proceso de compilación aislado con otra ruta. Primero hay que identificar el proceso y la fuente de confianza.
Fija el proceso y la solicitud que fallan
Reproduce con `python -m pip ...` y registra el ejecutable, OpenSSL y la versión de pip. Anota el host exacto y si falla la instalación principal, la resolución o una compilación aislada. Que funcione en el navegador no demuestra que Python use el mismo almacén o proxy.
Expón la configuración antes de editarla
Ejecuta `python -m pip config debug`, revisa los archivos y valores visibles y después las variables de CA, proxy e índice. No publiques credenciales. Un archivo de usuario, el entorno virtual o una variable puede tener prioridad sobre el ajuste esperado.
Identifica emisor y backend de CA
Averigua si la cadena procede de una CA pública, un proxy corporativo o un intermediario inesperado. Las combinaciones modernas compatibles pueden usar certificados del sistema y certifi mediante truststore, pero depende de las versiones; un archivo CA explícito vuelve a cambiar la ruta.
Elige la reparación compatible mínima
Si el intérprete es incorrecto, llama al previsto. Si es demasiado antiguo, actualiza por una vía autorizada. Con inspección TLS corporativa, obtiene la raíz del administrador y añádela al almacén del sistema o usa un paquete CA aprobado. Corrige proxy o índice en su origen.
Usa las excepciones solo para diagnosticar
trusted-host o desactivar la verificación puede aislar el límite, pero no demuestra la identidad ni repara la cadena. No dejes la excepción en configuración global, imágenes, CI o comandos compartidos. Elimínala tras la prueba y no publiques credenciales o CA privadas.
Verifica el cierre en un proceso nuevo
Abre otra terminal o reconstruye el entorno, repite la misma solicitud sin excepción y revisa otra vez la configuración. Confirma intérprete y CA, además de dependencias directas y de compilación. Si solo falla el aislamiento, conserva esa diferencia como evidencia de otro proceso.
