example ejemplos ejecutar desde descargar consola configurar comando archivo linux curl proxy

linux - ejemplos - realizar solicitudes HTTP con cURL(usando PROXY)



curl linux install (14)

Tengo esta dirección proxy: 125.119.175.48:8909

¿Cómo puedo realizar una solicitud HTTP utilizando cURL como curl http://www.example.com , pero especificando la dirección proxy de mi red?


Con un proxy con autenticación utilizo:

curl -x <protocol>://<user>:<password>@<host>:<port> --proxy-anyauth <url>

porque, no sé por qué curl no usa / captura las variables de entorno http [s] _proxy .


De man curl :

-x, --proxy <[protocol://][user:password@]proxyhost[:port]> Use the specified HTTP proxy. If the port number is not specified, it is assumed at port 1080.


Dependiendo de su lugar de trabajo, es posible que también deba especificar la opción -k o --insecure para la curvatura para superar posibles problemas con los certificados de CA.

curl -x <myCompanyProxy>:<port> -k -O -L <link to file to download>


En caso de que el proxy esté utilizando proxy automático con archivo PAC. Podemos encontrar el proxy real desde el javascript desde la URL del PAC.

Y si el proxy necesita autenticación, primero podemos usar un navegador web normal para acceder al sitio web que promoverá el diálogo de autenticación. Después de la autenticación, podemos usar wireshark para capturar los envíos de paquetes http al servidor proxy, desde el paquete http, podemos obtener el token de autenticación del encabezado http: Proxy-Authorization

Luego podemos establecer la variable de entorno http_proxy y también incluir el token de autenticación en el encabezado http: Proxy-Authorization

exportar http_proxy = http://proxyserver:port

curl -H "Autorización-Proxy: xxxx" http: // targetURL


Es posible que las soluciones anteriores no funcionen con algunas versiones de curl. Las probé yo mismo (curl 7.22.0). Pero lo que funcionó para mí fue:

curl -x http://proxy_server:proxy_port --proxy-user username:password -L http://url

Espero que resuelva el problema mejor!


Forma general:

export http_proxy=http://your.proxy.server:port/

Luego puedes conectarte a través de proxy desde (muchas) aplicaciones.

Y, según el comentario a continuación, para https:

export https_proxy=https://your.proxy.server:port/


Me gusta usar esto para obtener la IP bajo la cual me ven

curl -x http://proxy_server:proxy_port https://api.ipify.org?format=json && echo

Espero que esto ayude a alguien.


No es necesario exportar la variable de shell http[s]_proxy si solo está configurando el proxy para un comando único. p.ej

http_proxy=http://your.proxy.server:port curl http://www.example.com

Dicho esto, preferiría curl -x si supiera que siempre iba a usar un proxy.


Para curl puede configurar proxy en su archivo ~/.curlrc agregando un valor de proxy , la sintaxis es:

proxy = http://username:password@proxy-host:port


Simplemente resumiendo todas las grandes respuestas mencionadas:

curl -x http://<user>:<pass>@<proxyhost>:<port>/ -o <filename> -L <link>


Tenga en cuenta que si está utilizando un proxy SOCKS, en lugar de un proxy HTTP / HTTPS, necesitará usar el conmutador --socks5 lugar:

curl --socks5 125.119.175.48:8909 http://example.com/


como una adición a airween, otra buena idea es agregar esto a su .bashrc, para que pueda pasar de un entorno sin proxy a un proxy:

alias proxyon="export http_proxy=''http://YOURPROXY:YOURPORT'';export https_proxy=''http://YOURPROXY:YOURPORT''" alias proxyoff="export http_proxy='''';export https_proxy=''''"

DONDE ESTÁ SU PROYECTO: YOURPORT es exactamente eso, su ip y proxy de puerto :-).

Entonces, simplemente haciendo

proxyon

su sistema comenzará a usar el proxy, y todo lo contrario con:

proxyoff


puedes usar :

curl http://www.example.com --proxy http://125.119.175.48:8909

según lo explicado por Karl


usa lo siguiente

curl -I -x 192.168.XX:XX http://google.com

192.168.XX:XX puso su servidor proxy ip y puerto.

-v modo verboso dará más detalles incluyendo encabezados y respuesta.