VVinaProxy

نحوه رفع خطای 407 Proxy Authentication Required

Updated:

خطای 407 خبر بهتری از ظاهرش است: دستگاه شما به پروکسی متصل شده و مسیر شبکه باز است. پروکسی صرفاً اعلام می‌کند که نام کاربری و رمز عبور معتبری دریافت نکرده است. به همین دلیل تقریباً همه خطاهای 407 در بخش اطلاعات ورود حل می‌شوند، نه در روتر یا فایروال شما.

پروکسی‌های اختصاصی با مشخصات ورود دقیق

دلایل بروز خطای 407 به ترتیب احتمال

  • نام کاربری یا رمز عبور اشتباه یا وارد نشده. یک کاراکتر اشتباه تایپ‌شده، یا فاصله اضافی (space) که همراه با رمز عبور کپی شده است. این مورد علت اکثر گزارش‌های 407 است.
  • چسباندن فیلدها در کادرهای اشتباه. کل خط ip:port:user:pass در کادر Host قرار می‌گیرد، یا نام کاربری در کادر رمز عبور وارد می‌شود. برخی ابزارها این چهار فیلد را به‌طور خودکار تفکیک می‌کنند، اما برخی دیگر این کار را انجام نمی‌دهند.
  • برنامه اصلاً اطلاعات ورود را ارسال نمی‌کند. تنظیمات پروکسی سیستم‌عامل فقط آدرس و پورت را ذخیره می‌کند. برنامه‌هایی که کادری برای درخواست رمز عبور باز نمی‌کنند، بدون هدر احراز هویت متصل شده و خطای 407 دریافت می‌کنند.
  • کاراکترهای خاص درون URL پروکسی. در ساختار http://user:pass@host:port، کاراکترهایی مانند @، : یا # در رمز عبور باید percent-encoded شوند (@ به %40 تبدیل می‌شود)، در غیر این صورت رشته در جای اشتباهی تفکیک می‌شود.

خطای 407 در عمل چگونه دیده می‌شود

ما این خطا را روی یک پروکسی آزمایشی بازتولید کردیم که در اینجا با آدرس مستنداتی 203.0.113.10:8080 و اطلاعات ورود عمداً اشتباه user123:pass456 نشان داده شده است. در برابر یک سایت HTTPS، دستور curl -x http://user123:[email protected]:8080 https://example.com پیام curl: (56) CONNECT tunnel failed, response 407 را چاپ می‌کند. در برابر یک سایت معمولی HTTP با -w %{http_code}، برنامه curl تنها 407 را چاپ می‌کند.

فلگ -v را اضافه کنید تا ببینید آیا اصلاً اطلاعات ورود ارسال شده است یا خیر. خروجی لاگ عبارت > CONNECT example.com:443 HTTP/1.1، سپس > Proxy-Authorization: Basic ... و فقط پس از آن خطای 407 را نشان می‌دهد. اگر خط Proxy-Authorization وجود نداشته باشد، کلاینت شما هرگز اطلاعات ورود را ارسال نکرده است.

ابزار proxy checker متعلق به VinaProxy همین وضعیت را به‌صورت auth failed (407) گزارش می‌دهد. مرورگر Headless Chrome که هیچ کادر ورود مشخصی ندارد، آن را به‌صورت ERR_TUNNEL_CONNECTION_FAILED نمایش می‌دهد؛ tunnel error page را ببینید.

راه‌حل‌ها به تفکیک محیط کاربری

  • ویندوز و Chrome: مرورگر Chrome از تنظیمات پروکسی Windows پیروی می‌کند (Settings > Network & Internet > Proxy) که فقط آدرس و پورت را نگه می‌دارد. هنگام بارگذاری اولین صفحه، Chrome یک کادر ورود برای نام کاربری و رمز عبور پروکسی باز می‌کند. اگر آن را اشتباه تایپ کرده‌اید و کادر دوباره باز نمی‌شود، تمام پنجره‌های Chrome را ببندید و مجدداً باز کنید.
  • مرورگرهای آنتی‌دتکت (AdsPower, GoLogin, GenLogin): مقادیر Host، Port، Username و Password را در فیلدهای جداگانه نگه دارید. فیلد رمز عبور را کاملاً پاک کرده و به‌جای ویرایش، دوباره جای‌گذاری کنید. راهنمای فیلد به فیلد در GoLogin setup guide قرار دارد.
  • گوشی‌های موبایل: در iPhone یک گزینه Authentication در مسیر Settings > Wi-Fi > (i) > Configure Proxy وجود دارد؛ خاموش بودن آن خطای 407 ایجاد می‌کند. Android معمولاً فقط میزبان و پورت را قبول می‌کند، بنابراین برنامه‌هایی که نیاز به لاگین دارند ممکن است به‌جای آن یک خطای اتصال عمومی نشان دهند.
  • curl: آرگومان -U "user:pass" را به‌صورت جداگانه ارسال کنید نه اینکه آن را در URL قرار دهید؛ این کار مانع از بروز مشکلات کاراکترهای خاص می‌شود.
  • پایتون requests: مقدار http://user:pass@host:port را برای هر دو کلید http و https در دیکشنری proxies تنظیم کنید و پسوردهای دارای کاراکتر خاص را با urllib.parse.quote انکود نمایید.

اطلاعات ورود درست است اما خطای 407 باقی می‌ماند

در مرحله بعد پروتکل‌ها را بررسی کنید. VinaProxy پروکسی‌های HTTP(S) با ورود user:pass و همچنین SOCKS5 ارائه می‌دهد، بنابراین پروتکلی را انتخاب کنید که در سفارش شما در داشبورد آمده است. اگر ابزار بررسی پیام not socks5 را برگرداند، آن پورت با پروتکل HTTP کار می‌کند و نباید روی SOCKS5 تنظیم شود.

گام به گام

  1. 1

    کپی کردن خط پروکسی از داشبورد

    سفارش را در داشبورد VinaProxy خود باز کرده و کل خط را به‌جای تایپ کردن کپی کنید.

  2. 2

    بررسی با ابزار چک پروکسی

    آن را در proxy checker جای‌گذاری کنید. نتیجه auth failed (407) نشان می‌دهد که مشکل از اطلاعات ورود است، نه از شبکه.

  3. 3

    وارد کردن دوباره و تمیز نام کاربری و رمز عبور

    هر دو فیلد را در نرم‌افزار خود پاک کرده و بدون هیچ فاصله اضافی در ابتدا یا انتها مجدداً جای‌گذاری کنید.

  4. 4

    تطبیق پروتکل با مشخصات سفارش

    نوع پروکسی را دقیقاً مطابق با سفارش روی HTTP یا SOCKS5 قرار دهید و سپس ذخیره کنید.

  5. 5

    بررسی با curl -v در صورت ادامه مشکل

    دستور curl -v را با مقادیر واقعی خود اجرا کنید و وجود خط Proxy-Authorization را قبل از 407 بررسی نمایید.

پرسش‌های متداول

آیا خطای 407 به دلیل مسدود شدن پروکسی توسط ISP من است؟

خیر. خطای 407 توسط خود پروکسی ارسال می‌شود، بنابراین اتصال به پروکسی برقرار شده است. مسیر مسدودشده معمولاً به‌صورت timeout یا خطای رد اتصال ظاهر می‌شود؛ proxy timeout را ببینید.

چرا Chrome مدام اطلاعات ورود پروکسی را درخواست می‌کند؟

هر ورود اشتباه منجر به خطای 407 جدید می‌شود و Chrome دوباره درخواست می‌کند. کلید Caps Lock را بررسی کنید و مطمئن شوید کیبورد ویتنامی یا زبان ورودی دیگری علائم ناخواسته به رمز عبور اضافه نکرده باشد.

چگونه رمز عبوری را که شامل @ است در URL پروکسی قرار دهم؟

آن را انکود کنید: @ به‌صورت %40، : به‌صورت %3A و # به‌صورت %23. در curl، فلگ -U نیاز به انکود کردن را کاملاً برطرف می‌کند.

برنامه‌های Selenium یا Puppeteer به جای 407 خطای tunnel نشان می‌دهند. آیا همان مشکل است؟

معمولاً بله. مرورگر Headless Chrome نمی‌تواند پنجره ورود را نشان دهد، بنابراین خطای 407 به‌صورت ERR_TUNNEL_CONNECTION_FAILED ظاهر می‌شود. اطلاعات ورود را از طریق سازوکار احراز هویت همان کتابخانه ارسال کنید، همان‌طور که در Selenium guide آمده است.

پروکسی‌های اختصاصی با مشخصات ورود دقیق

با هر سفارش در VinaProxy یک خط آماده ip:port:user:pass دریافت می‌کنید تا فقط یک‌بار کپی کرده و در هر جایی جای‌گذاری کنید.

مشاهده قیمت پروکسی‌ها

Related articles

خطاهای پروکسی
رفع خطای ERR_TUNNEL_CONNECTION_FAILED هنگام استفاده از پروکسی
خطای ERR_TUNNEL_CONNECTION_FAILED یعنی Chrome به پروکسی متصل شده اما تونل HTTPS باز نشده است. نحوه خواندن کد CONNECT و رفع آن در Chrome، Puppeteer و Android.
ابزارهای رایگان
چکر پروکسی: بررسی آنلاین پروکسی‌های شما
چکر رایگان پروکسی: تا 100 پروکسی را به صورت ip:port:user:pass وارد کنید و وضعیت، IP خروجی و تاخیر را آنلاین بررسی کنید. با معنای هر خطا آشنا شوید.
راه‌اندازی پروکسی
نحوه تنظیم پروکسی در Google Chrome
تنظیم پروکسی‌های HTTP(S) شرکت VinaProxy در Google Chrome بدون تغییر IP کل سیستم با استفاده از افزونه‌ها، فلگ‌های proxy-server-- یا پروفایل‌های کاربری مجزا.
راه‌اندازی پروکسی
نحوه استفاده از پروکسی با cURL (سینتکس خط فرمان و عیب‌یابی)
نحوه استفاده از curl با پروکسی‌های دارای احراز هویت HTTP(S) (-x http://user:pass@ip:port و -U) در Linux، macOS و Windows و سپس بررسی هدرها و تاخیر.
راه‌اندازی پروکسی
نحوه استفاده از پروکسی در Python Requests (HTTP/HTTPS و استخر Session)
پیکربندی پروکسی‌های دارای احراز هویت HTTP(S) در requests و requests.Session() پایتون. مدیریت خطاهای 407 ProxyError و چرخش استخرهای IP استاتیک.
راه‌اندازی پروکسی
نحوه تنظیم پروکسی در GoLogin (مرورگر Orbita)
راهنمای گام‌به‌گام افزودن پروکسی HTTP با فرمت ip:port:user:pass در GoLogin: تنظیم WebRTC و منطقه زمانی Orbita و الصاق هم‌زمان چندین پروکسی. مشاهده مراحل.
راه‌اندازی پروکسی
نحوه تنظیم پروکسی در Windows 10 و Windows 11
پیکربندی پروکسی‌های HTTP(S) متعلق به VinaProxy در Windows 10 و Windows 11 با تنظیمات WinINET سیستم، متغیرهای محیطی PowerShell یا netsh winhttp.
راه‌اندازی پروکسی
نحوه تنظیم پروکسی در GenLogin (تک‌پروفایل و وارد کردن گروهی)
پیکربندی پروکسی‌های HTTP با فرمت ip:port:user:pass در مرورگر ضدتشخیص GenLogin. هماهنگ‌سازی منطقه زمانی و WebRTC و رفع خطاهای اتصال در پروفایل‌ها.