К содержимому

Прокси для wget: переменные окружения, .wgetrc и пароль

Как заставить wget скачивать через прокси: какие переменные задать, как передать логин и пароль, файл запуска, адреса без прокси, как отключить и как проверить, что всё работает.

Что меняет прокси и что нет

Прокси меняет только сетевой путь между вашим компьютером и сервером, откуда вы скачиваете. Он не меняет запрашиваемый адрес и правила сайта. Здесь речь о команде wget; прокси для всей системы описан в руководстве по Linux, команда curl — в руководстве по curl.

Переменные окружения: стандартный способ

Руководство GNU Wget называет переменные окружения стандартным способом указать Wget, где находится прокси. http_proxy и https_proxy содержат URL прокси для HTTP- и HTTPS-соединений, а no_proxy — список окончаний доменов через запятую, для которых прокси не используется. Переменная действует только в окне терминала, где вы её задали. В Windows PowerShell вместо export пишут $env:https_proxy = "...".

Задать прокси на сеанс терминала: пример

export http_proxy=http://USERNAME:PASSWORD@HOST:PORT/
export https_proxy=http://USERNAME:PASSWORD@HOST:PORT/
wget https://example.com/file.zip

Замените HOST, PORT, USERNAME и PASSWORD значениями из «Мои активы».

Логин и пароль

В руководстве показано два способа. Первый — указать логин и пароль в URL прокси, как в http://hniksic:[email protected]:8001/. Второй — параметры --proxy-user и --proxy-password (в файле запуска proxy_user и proxy_password); Wget кодирует их схемой basic, и, как сказано в руководстве, для прокси сейчас реализована только она. В разделе об URL сказано, что небезопасные символы можно записывать как %xy; перечислены % (%25), : (%3A) и @ (%40). Если такие символы есть в пароле, запишите их так и проверьте способом ниже. Страницы о прокси про спецсимволы в пароле ничего не говорят, это вывод из правил для URL. Пароль, набранный в команде, остаётся в истории терминала; руководство отмечает, что действуют те же соображения безопасности, что и для --http-password.

Логин и пароль параметрами: пример

export https_proxy=http://HOST:PORT/
wget --proxy-user=USERNAME --proxy-password=PASSWORD https://example.com/file.zip

Замените HOST, PORT, USERNAME и PASSWORD значениями из «Мои активы».

Сохранить в файле запуска .wgetrc

Wget читает настройки и из файла запуска .wgetrc. По руководству, сначала читается глобальный файл (по умолчанию /usr/local/etc/wgetrc), затем ваш: файл, на который указывает переменная WGETRC, если она задана, иначе $HOME/.wgetrc; ваш файл перекрывает глобальный. Параметр --config задаёт другой файл, а --no-config отключает чтение файлов настроек. Команды прокси там перекрывают настройки окружения: http_proxy, https_proxy, no_proxy, proxy_user и proxy_password, а также use_proxy — со значением off Wget не использует прокси, даже если переменные заданы. Где находится $HOME в Windows, руководство не говорит; если не уверены, пользуйтесь переменными окружения выше: файл им не нужен.

Строки прокси в .wgetrc: пример

http_proxy = http://HOST:PORT/
https_proxy = http://HOST:PORT/
proxy_user = USERNAME
proxy_password = PASSWORD
no_proxy = .internal.example

Замените HOST, PORT, USERNAME и PASSWORD значениями из «Мои активы».

Адреса, которые не должны идти через прокси

Внутренние и локальные адреса внесите в no_proxy — список окончаний доменов через запятую. Пример из руководства: если no_proxy равен .mit.edu, прокси не используется для документов с MIT. Чтобы один раз запустить без прокси, добавьте --no-proxy (по руководству, он отключает прокси, даже если переменные окружения заданы).

Один запуск без прокси: пример

wget --no-proxy http://internal-server.local/data.csv

Адрес приведён для примера; --no-proxy действует только на этот запуск.

SOCKS5

На странице о прокси в руководстве сказано, что Wget поддерживает прокси для HTTP- и FTP-загрузок; про SOCKS там ничего нет. Поэтому здесь только адрес HTTP-прокси: при создании прокси в Proxy302 выберите протокол HTTP.

Как отключить прокси

Закройте окно терминала или выполните unset http_proxy https_proxy no_proxy. Удалите строки прокси из .wgetrc или задайте там use_proxy = off. На один запуск добавьте --no-proxy.

Как проверить, что Wget использует прокси

  1. Спросите у сервиса свой адрес

    Первая команда ниже сохраняет ответ https://ipinfo.io/json в файл и выводит его. Адрес в нём должен быть выходом прокси, а не вашим.

  2. Сравните с curl

    Вторая команда спрашивает через тот же прокси с помощью curl. Если curl работает, а Wget нет, поищите забытый .wgetrc или запись в no_proxy.

  3. Затем скачайте небольшой файл

    Скачайте небольшой файл, который вам доступен, с заданным прокси.

Проверка, что Wget использует прокси: пример

wget -q -O ipinfo.json https://ipinfo.io/json && cat ipinfo.json
curl -x http://USERNAME:PASSWORD@HOST:PORT https://ipinfo.io/json

Замените HOST, PORT, USERNAME и PASSWORD значениями из «Мои активы».

Частые ошибки

• 407 Proxy Authentication Required: прокси отклонил логин или пароль либо не получил их. Укажите их в URL или через --proxy-user и --proxy-password и проверьте процентное кодирование.

• Connection refused: неверные HOST или PORT либо срок аренды закончился. Проверьте тот же адрес командой curl выше. Команда retry_connrefused = on в файле запуска заставляет Wget считать отказ в соединении временной ошибкой и повторять попытку.

• Wget идёт напрямую: проверьте no_proxy, use_proxy = off в .wgetrc или --no-proxy в псевдониме команды.

• Загрузка по https:// не использует прокси: убедитесь, что задан https_proxy, а не только http_proxy.

Как это сделать с Proxy302

Для любой команды здесь нужны только хост, порт, логин и пароль прокси Proxy302. Wget принимает HTTP-адрес, поэтому при создании прокси выберите HTTP. Трафик ротационных резидентных прокси оплачивается за ГБ, страна выхода задаётся при создании прокси; HTTP — порт 2222, SOCKS5 — порт 3333 на proxy.proxy302.com. Статический ISP IP фиксирован на весь срок аренды и не ротируется — удобно, если инструмент должен всегда выходить с одного адреса. HTTP или SOCKS5 выбирают при покупке, один IP работает с одним протоколом.

Как это сделать с Proxy302: шаги

  1. Шаг 1

    Откройте страницу ротационных резидентных прокси, выберите линию, оставьте протокол HTTP и нажмите «Проверить цену и создать».

  2. Шаг 2

    Откройте «Мои активы» (раздел консоли со всем, что вы купили) и скопируйте HOST, PORT, USERNAME и PASSWORD. На странице «Подключение» есть готовый пример с вашими данными.

  3. Шаг 3

    Подставьте значения в команды выше.

  4. Шаг 4

    Подтвердите выход запросом к https://ipinfo.io/json через прокси.

  5. Шаг 5

    Из материкового Китая сначала запустите вспомогательную программу на странице «Подключение» и держите её открытой, пока работает прокси.

Цены и ограничения

Бюджетная линия стоит $1,50 за ГБ, $1,35 за ГБ в пакете 100 ГБ и $1,20 за ГБ при 300 ГБ. Статический ISP IP — $0,50 за один день и $7,99 за 30 дней. Бесплатного пробного периода нет, минимальная покупка — 1 ГБ или один IP на один день. Набор доступных локаций меняется ежедневно.

Вопросы и ответы

Какую переменную Wget читает для ссылок https://?

https_proxy. По руководству, http_proxy и https_proxy содержат URL прокси для HTTP- и HTTPS-соединений соответственно.

Должен ли сам URL прокси начинаться с https://?

Для HTTP-прокси Proxy302 в обеих переменных пишите http://HOST:PORT/. Слово https в имени https_proxy лишь говорит, для каких загрузок он используется.

Можно ли использовать SOCKS5-прокси с Wget?

На странице руководства о прокси про SOCKS ничего нет. Используйте адрес HTTP-прокси.

Сохранится ли настройка после закрытия терминала?

Переменные окружения — нет; строки в .wgetrc — да.

Ссылки и источники

6
  1. GNU Wget Manual: Proxies

    Официальная документация · Проверено:

    Wget 1.25.0 manual, node Proxies: Wget supports proxies for HTTP and FTP retrievals; the standard way is the variables http_proxy, https_proxy (URLs of proxies for HTTP and HTTPS connections), ftp_proxy and no_proxy (comma-separated list of domain extensions proxy should not be used for; .mit.edu example); --no-proxy / "proxy = on/off" suppress the proxy even if variables are set; startup-file http_proxy, https_proxy, ftp_proxy and no_proxy override the environment; proxy authorization supports only the Basic scheme; username and password go in the proxy URL (http://hniksic:[email protected]:8001/) or in proxy-user and proxy-password / proxy_user and proxy_password. Checked on 2 November 2026 against the official release documentation (doc/wget.texi in wget-1.25.0.tar.gz from https://ftp.gnu.org/gnu/wget/, released 2024-11-10), because www.gnu.org could not be reached; the gnu.org manual page is the same text.

    The page does not mention SOCKS or percent-encoding of special characters.

  2. GNU Wget Manual: Wgetrc Commands

    Официальная документация · Проверено:

    Node Wgetrc Commands. Checked on 2 November 2026 against the official release documentation (doc/wget.texi in wget-1.25.0.tar.gz from https://ftp.gnu.org/gnu/wget/, released 2024-11-10), because www.gnu.org could not be reached; the gnu.org manual page is the same text. http_proxy and https_proxy "instead of the one specified in environment"; no_proxy is a comma-separated list of domains for which no proxy is loaded; proxy_user and proxy_password set proxy authentication; use_proxy = off means do not use a proxy even when proxy-related environment variables are set, same as --no-proxy; retry_connrefused = on considers "connection refused" a transient error; output_document = file is the same as -O file; quiet = on/off is the same as -q.

    The commands are described one by one; the file location is in the Wgetrc Location node (next source).

  3. GNU Wget Manual: HTTP Options

    Официальная документация · Проверено:

    Node HTTP Options. Checked on 2 November 2026 against the official release documentation (doc/wget.texi in wget-1.25.0.tar.gz from https://ftp.gnu.org/gnu/wget/, released 2024-11-10), because www.gnu.org could not be reached; the gnu.org manual page is the same text. --proxy-user=user and --proxy-password=password specify the username and password for authentication on a proxy server; Wget encodes them with the basic authentication scheme; security considerations similar to --http-password apply.

    It says nothing about SOCKS.

  4. GNU Wget Manual: Wgetrc Location

    Официальная документация · Проверено:

    Node Wgetrc Location. Checked on 2 November 2026 against the official release documentation (doc/wget.texi in wget-1.25.0.tar.gz from https://ftp.gnu.org/gnu/wget/, released 2024-11-10), because www.gnu.org could not be reached; the gnu.org manual page is the same text. Global file /usr/local/etc/wgetrc by default; then the file named by WGETRC if set, else $HOME/.wgetrc; the user file overrides the global one. The Overview node adds --config and --no-config.

    It does not describe Windows locations.

  5. GNU Wget Manual: URL Format

    Официальная документация · Проверено:

    Node URL Format. Checked on 2 November 2026 against the official release documentation (doc/wget.texi in wget-1.25.0.tar.gz from https://ftp.gnu.org/gnu/wget/, released 2024-11-10), because www.gnu.org could not be reached; the gnu.org manual page is the same text. Unsafe characters in a URL can be written as %xy; % is %25, : is %3A, @ is %40.

    It is about the URLs given to Wget, not specifically proxy URLs.

  6. Факты о продукте и прайс Proxy302

    Наблюдение за продуктом · Проверено:

    Product facts file of the site (values checked against the console, the backend and the price table on 18-19 October 2026): products, prices in US$ (1 PTC = US$1), lease terms, protocols and ports, countries, quantity limits, no free trial.

Готовы попробовать?

Создайте аккаунт, пополните баланс и выберите ротируемый резидентный, статический ISP или дата-центр IP — настроить его в браузере можно за несколько минут.