Ferfang 127.0.0.1:8080 troch in einpunt fan jo tsjinst of út de list mei HTTP-proxy’s en fier dit út tsjin in ûnskuldich HTTPS-doel:

curl --noproxy '' --proxy http://127.0.0.1:8080 --connect-timeout 5 --max-time 15 --verbose https://example.com/

It loopback-adres betsjut in listener op jo eigen kompjûter. It kommando kiest dy eksplisyt, makket de bypasslist fan curl foar dizze oprop leech en jout fiif sekonden foar it opsetten fan de ferbining en fyftjin sekonden yn totaal. De proxy-ynstellingen fan browser en systeem wurde net feroare.

Brûk it echte útfierbere curl-bestân as jo shell curl as alias foar in oar programma brûkt; curl --version identifisearret de build. As de listener sels TLS freget, brûk dan it dokumintearre proxy-URL-skema.

Lês fjouwer resultaten, net ien grien ljocht

  1. Ferbûn mei de keazen proxy: it adres en de poarte binne berikber.
  2. CONNECT akseptearre: de proxy iepene in tunnel nei it HTTPS-doel.
  3. Sertifikaat fan it doel kontrolearre: TLS is foltôge mei de ferwachte fertrouwenskontrôles.
  4. Antwurd fan it doel ûntfongen: besjoch de status en ynhâld foar it resultaat dat jo applikaasje nedich hat.

In wurkjende tunnel kin folge wurde troch 403 of 429 fan it doel. curl kin ek suksesfol ôfslute nei in HTTP-flaterantwurd, dus registrearje sawol de antwurdstatus as it flaterresultaat fan curl. Allinnich in TCP-ferbining of suksesfolle CONNECT is net genôch.

In kompakt resultaat foar werhelle fergelikingen

Yn in Unix-eftige shell kinne jo it antwurdlichem fuortsmite en tunnelstatus, doelstatus, de oare kant fan de ferbining en de ferrûne tiid ôfdrukke:

curl --noproxy '' --proxy http://127.0.0.1:8080 --connect-timeout 5 --max-time 15 --silent --show-error --output /dev/null --write-out 'http=%{http_code} connect=%{http_connect} peer=%{remote_ip} total=%{time_total}\n' https://example.com/

http_connect beskriuwt it tunnelantwurd; http_code beskriuwt it lêste HTTP-antwurd. remote_ip is de oare kant fan de curl-ferbining, net in ûnôfhinklike mjitting fan it útgeande adres fan de proxy. Ferfang /dev/null op oare systemen of bewarje it antwurdlichem.

As de test mislearret, fyn de mislearre stap yn it opsetten of oerdragen en fergelykje itselde doel streekrjocht wêr’t dy rûte tastien is:

curl --noproxy '*' --connect-timeout 5 --max-time 15 --verbose https://example.com/

--noproxy '*' giet oan proxy’s foarby. Mislearre sertifikaatferifikaasje op beide rûtes wiist op in mienskiplik fertrouwensprobleem; in suksesfolle direkte ferbining mei in wegere CONNECT wiist op proxy-autentikaasje of belied. Kontrolearje de detaillearre útfier foardat jo dy diele, want der kin identifisearjende ynformaasje yn stean.

Bewarje it einpunt, doel en tiidstimpel mei it resultaat. Dat leit fêst wat foar dy oanfraach wurke; takomstige beskikberens, privacy en prestaasjes ûnder lêst freegje om apart bewiis.

Relatearre artikelen