Kako riješiti 407 Proxy Authentication Required
Updated:
Greška 407 je bolja vijest nego što izgleda: vaš uređaj je uspostavio vezu s proksijem i mrežna putanja je otvorena. Proksi vam samo javlja da nije primio važeće korisničko ime i lozinku. Zato se gotovo svaka greška 407 rješava provjerom pristupnih podataka, a ne na ruteru ili zaštitnom zidu.
Uzroci greške 407, počevši od najčešćih
- Pogrešno ili nedostajuće korisničko ime/lozinka. Jedan pogrešno upisan znak ili razmak na kraju kopiran zajedno s lozinkom. Ovo objašnjava većinu prijava greške 407.
- Polja zalijepljena u pogrešne okvire. Čitav red
ip:port:user:passzavrši u polju za Host, ili korisničko ime dospije u polje za lozinku. Neki alati sami razdvajaju ova četiri polja, dok drugi to ne rade. - Aplikacija nikada ne šalje pristupne podatke. Postavka proksija u operativnom sistemu čuva samo adresu i port. Aplikacije koje ne mogu zatražiti lozinku povezuju se bez zaglavlja za autentifikaciju i dobijaju nazad 407.
- Specijalni znakovi unutar URL-a proksija. U formatu
http://user:pass@host:port, znakovi poput@,:ili#u lozinki moraju biti kodirani u procente (@postaje%40), inače se niz znakova razdvaja na pogrešnom mjestu.
Kako greška 407 zapravo izgleda
Grešku smo reprodukovali na testnom proksiju, prikazanom ovdje sa adresom iz dokumentacije 203.0.113.10:8080 i namjerno pogrešnim user123:pass456. Prema HTTPS stranici, curl -x http://user123:[email protected]:8080 https://example.com ispisuje curl: (56) CONNECT tunnel failed, response 407. Prema običnoj HTTP stranici uz -w %{http_code}, curl ispisuje samo 407.
Dodajte -v da vidite jesu li pristupni podaci uopšte poslati. Trag prikazuje > CONNECT example.com:443 HTTP/1.1, zatim > Proxy-Authorization: Basic ..., i tek nakon toga 407. Ako red Proxy-Authorization nedostaje, vaš klijent nikada nije poslao podatke za prijavu.
VinaProxy proxy checker prijavljuje isti slučaj kao auth failed (407). Headless Chrome, koji nema prozor za prijavu, prikazuje to kao ERR_TUNNEL_CONNECTION_FAILED; pogledajte stranicu o grešci tunela.
Rješenja po okruženjima
- Windows i Chrome: Chrome prati postavku Windows proksija (Settings > Network & Internet > Proxy), koja sadrži samo adresu i port. Prilikom prvog učitavanja stranice, Chrome otvara prozor za prijavu s korisničkim imenom i lozinkom za proksi. Ako ste ih pogrešno unijeli, a prozor se ponovo ne pojavljuje, zatvorite sve Chrome prozore i ponovo ih otvorite.
- Antidetect preglednici (AdsPower, GoLogin, GenLogin): držite Host, Port, Username i Password u zasebnim poljima. Potpuno obrišite polje za lozinku i ponovo je zalijepite umjesto da je uređujete. Pomoć polje po polje nalazi se u GoLogin vodiču za podešavanje.
- Telefoni: iPhone ima prekidač Authentication pod Settings > Wi-Fi > (i) > Configure Proxy; ako ga ostavite isključenog, dolazi do greške 407. Android obično prihvata samo host i port, pa aplikacije koje zahtijevaju prijavu mogu umjesto toga prikazati opću grešku u povezivanju.
- curl: proslijedite
-U "user:pass"odvojeno umjesto da ga ugrađujete u URL, čime se zaobilaze problemi sa specijalnim znakovima. - Python requests: postavite
http://user:pass@host:porti zahttpi zahttpsključeve u rječnikuproxies, a neuobičajene lozinke kodirajte pomoćuurllib.parse.quote.
Pristupni podaci su tačni, ali 407 ostaje
Sljedeće što trebate jeste uporediti protokole. VinaProxy prodaje HTTP(S) proksije s user:pass prijavom, kao i SOCKS5, pa odaberite protokol naveden na vašoj narudžbi na kontrolnoj tabli. Ako provjernik odgovori not socks5, taj port koristi HTTP i ne bi trebao biti konfigurisan kao SOCKS5.
Korak po korak
- 1
Kopirajte red s proksijem s kontrolne table
Otvorite narudžbu na svojoj VinaProxy kontrolnoj tabli i kopirajte čitav red umjesto ručnog kucanja.
- 2
Testirajte ga kroz proksi provjernik
Zalijepite ga u proxy checker. Rezultat
auth failed (407)potvrđuje problem s pristupnim podacima, a ne s mrežom. - 3
Ponovo i uredno unesite korisničko ime i lozinku
Obrišite oba polja u svom programu i ponovo ih zalijepite bez razmaka na početku ili na kraju.
- 4
Uskladite protokol s narudžbom
Postavite vrstu proksija na HTTP ili SOCKS5 tačno onako kako piše u narudžbi, a zatim sačuvajte.
- 5
Pratite vezu pomoću curl -v ako problem potraje
Pokrenite
curl -vsa svojim stvarnim vrijednostima i provjerite postoji li redProxy-Authorizationprije koda 407.
Često postavljana pitanja
Da li grešku 407 uzrokuje moj ISP koji blokira proksi?
Ne. Grešku 407 šalje sam proksi, što znači da je veza prošla. Blokirana putanja se umjesto toga manifestuje kao istek vremena ili odbijena veza; pogledajte istek vremena proksija.
Zašto Chrome stalno traži prijavu na proksi?
Svaki pogrešan unos rezultira novom greškom 407 i Chrome ponovo traži podatke. Provjerite Caps Lock i uvjerite se da vijetnamski ili neki drugi način unosa teksta ne dodaje akcente u lozinku.
Kako da stavim lozinku koja sadrži @ u URL proksija?
Kodirajte znak: @ kao %40, : kao %3A, # kao %23. Kod alata curl, zastavica -U u potpunosti izbjegava potrebu za kodiranjem.
Selenium ili Puppeteer prikazuju grešku tunela umjesto 407. Da li je to isti problem?
Obično jeste. Headless Chrome ne može prikazati prozor za prijavu, pa se 407 pojavljuje kao ERR_TUNNEL_CONNECTION_FAILED. Proslijedite pristupne podatke kroz mehanizam biblioteke za autentifikaciju, kao u Selenium vodiču.
Privatni proksiji s jasnim pristupnim podacima
Svaka VinaProxy narudžba pruža vam spreman ip:port:user:pass red koji jednom kopirate i lijepite bilo gdje.
Pogledajte cijene proksija