Sådan løses 407 Proxy Authentication Required
Updated:
En 407-fejl er en bedre nyhed, end det ser ud til: din enhed nåede proxyen, og netværksforbindelsen er åben. Proxyen meddeler blot, at den ikke modtog et gyldigt brugernavn og adgangskode. Derfor løses næsten enhver 407-fejl på login-siden, ikke i din router eller firewall.
Årsager til en 407-fejl, mest sandsynlige først
- Forkert eller manglende brugernavn/adgangskode. En enkelt tastefejl eller et efterstillet mellemrum kopieret sammen med adgangskoden. Dette forklarer de fleste 407-rapporter.
- Felter indsat i de forkerte felter. Hele
ip:port:user:pass-linjen ender i Vært-feltet, eller brugernavnet lander i adgangskodefeltet. Nogle værktøjer opdeler automatisk de fire felter for dig, andre gør ikke. - Appen sender aldrig loginoplysninger. En proxy-indstilling i styresystemet gemmer kun adresse og port. Apps, der ikke kan bede om en adgangskode, forbinder uden en auth-header og modtager en 407 retur.
- Specialtegn i en proxy-URL. I formatet
http://user:pass@host:portskal tegn som@,:eller#i adgangskoden procent-kodes (@bliver til%40), da strengen ellers opdeles det forkerte sted.
Hvordan en 407-fejl rent faktisk ser ud
Vi genskabte fejlen på en testproxy, vist her med dokumentationsadressen 203.0.113.10:8080 og en bevidst forkert user123:pass456. Mod et HTTPS-websted udskriver curl -x http://user123:[email protected]:8080 https://example.com meddelelsen curl: (56) CONNECT tunnel failed, response 407. Mod et almindeligt HTTP-websted med -w %{http_code} udskriver curl blot 407.
Tilføj -v for at se, om loginoplysningerne overhovedet blev sendt. Sporingen viser > CONNECT example.com:443 HTTP/1.1, derefter > Proxy-Authorization: Basic ..., og først derefter 407. Hvis linjen Proxy-Authorization mangler, har din klient aldrig sendt loginoplysningerne.
VinaProxys proxy-tjekker rapporterer samme tilfælde som auth failed (407). Headless Chrome, som ikke har nogen logindialog, viser det som ERR_TUNNEL_CONNECTION_FAILED; se siden om tunnelfejl.
Løsninger efter miljø
- Windows og Chrome: Chrome følger Windows-proxyindstillingen (Indstillinger > Netværk og internet > Proxy), som kun indeholder adresse og port. Ved første sideindlæsning åbner Chrome en logindialog til proxy-brugernavn og adgangskode. Hvis du tastede forkert, og dialogen ikke vender tilbage, skal du lukke alle Chrome-vinduer og åbne dem igen.
- Antidetect-browsere (AdsPower, GoLogin, GenLogin): hold Vært, Port, Brugernavn og Adgangskode i separate felter. Ryd adgangskodefeltet helt, og indsæt det igen i stedet for at redigere det. Hjælp felt for felt findes i opsætningsguiden til GoLogin.
- Telefoner: iPhone har en Godkendelse-knap under Indstillinger > Wi-Fi > (i) > Konfigurer proxy; slås den fra, resulterer det i en 407-fejl. Android accepterer normalt kun vært og port, så apps, der kræver login, viser muligvis en generisk forbindelsesfejl i stedet.
- curl: angiv
-U "user:pass"separat i stedet for at integrere det i URL'en, hvilket omgår problemer med specialtegn. - Python requests: angiv
http://user:pass@host:portfor bådehttp- oghttps-nøglerne iproxies-ordbogen, og kod problematiske adgangskoder medurllib.parse.quote.
Loginoplysningerne er korrekte, men 407 fortsætter
Sammenlign derefter protokoller. VinaProxy sælger HTTP(S)-proxyer med user:pass-login og også SOCKS5, så vælg den protokol, der vises på din ordre i kontrolpanelet. Hvis tjekkeren svarer not socks5, understøtter den port HTTP og bør ikke konfigureres som SOCKS5.
Trin for trin
- 1
Kopiér proxy-linjen fra kontrolpanelet
Åbn ordren i dit VinaProxy-kontrolpanel, og kopiér hele linjen i stedet for at indtaste den manuelt.
- 2
Kør den igennem proxy-tjekkeren
Indsæt den i proxy-tjekkeren. Et
auth failed (407)-resultat bekræfter et problem med loginoplysningerne frem for et netværksproblem. - 3
Indtast brugernavn og adgangskode forfra
Ryd begge felter i dit program, og indsæt dem igen uden foranstillede eller efterstillede mellemrum.
- 4
Afstem protokollen med ordren
Indstil proxytypen til HTTP eller SOCKS5 nøjagtigt som angivet på ordren, og gem derefter.
- 5
Foretag sporing med curl -v, hvis det fortsætter
Kør
curl -vmed dine reelle værdier, og se efter enProxy-Authorization-linje før 407.
Ofte stillede spørgsmål
Skyldes en 407, at min internetudbyder blokerer proxyen?
Nej. 407-koden sendes af selve proxyen, så forbindelsen nåede frem. En blokeret rute viser sig i stedet som en timeout eller en afvist forbindelse; se proxy-timeout.
Hvorfor bliver Chrome ved med at bede om proxy-login?
Hver forkert indtastning udløser en ny 407-fejl, og Chrome spørger igen. Tjek Caps Lock, og sørg for, at en vietnamesisk eller anden indtastningsmetode ikke tilføjer accenter til adgangskoden.
Hvordan indsætter jeg en adgangskode med @ i en proxy-URL?
Kod det: @ som %40, : som %3A, # som %23. Med curl undgår -U-flaget indkodning fuldstændigt.
Selenium eller Puppeteer viser en tunnelfejl i stedet for 407. Er det samme problem?
Normalt ja. Headless Chrome kan ikke vise en logindialog, så 407 vises som ERR_TUNNEL_CONNECTION_FAILED. Angiv loginoplysninger via bibliotekets godkendelsesmekanisme, som beskrevet i Selenium-guiden.
Private proxyer med klare loginoplysninger
Hver VinaProxy-ordre giver dig en klar ip:port:user:pass-linje, du kan kopiere én gang og indsætte overalt.
Se proxy-priser