ProxyWing

Как использовать curl через прокси: команды и проверка

Для одного запроса задайте прокси параметром –proxy или -x. Для SOCKS5 выберите, где разрешать имя сайта: локально или на прокси. Ниже приведены примеры Bash и PowerShell, авторизация, постоянная конфигурация и отключение.

Опубликовано: 19 мая 2025 г.
Время чтения: 10 мин
Обновлено: 23 октября 2026 г.

Быстрый запрос curl через HTTP-прокси

Пример для Bash на Linux, macOS или в WSL. Введите полный адрес HTTP-прокси с портом:

read -r -p "URL HTTP-прокси с портом: " proxy_url
curl -q --proxy "$proxy_url" --noproxy "" \
  --connect-timeout 10 --max-time 30 --head https://proxywing.com/ru/

–head отправляет HEAD и показывает заголовки ответа. Без него curl обычно выводит тело ресурса. Для тела вместе с заголовками используйте –include. Ответы сайта на HEAD и GET могут отличаться.

-q первым аргументом отключает чтение стандартного curlrc. Пустое значение –noproxy убирает исключения, которые могли бы отправить запрос напрямую.

Проверка curl на вашей системе

В Bash выполните:

curl --version

В PowerShell используйте явное имя исполняемого файла, чтобы исключить совпадение с псевдонимом старых версий оболочки:

curl.exe --version

Если утилиты нет, установите пакет curl через менеджер пакетов своей системы или проверенную сборку для Windows. Протоколы и возможности TLS зависят от сборки и показываются в выводе версии.

Какие реквизиты нужны

Подготовьте адрес, порт, протокол и способ авторизации. Схема адреса должна соответствовать реальному входу сервера. Замена HTTP на HTTPS или SOCKS5 в строке не включает новый режим на прежнем порте.

Подробное руководство, как использовать curl с прокси

Адрес шлюза и внешний IP могут различаться, особенно у резидентского пула. Начните с одного сервера и одной целевой страницы.

Адрес и порт говорят cURL, к какому прокси подключаться, а регион выходного IP задаётся в настройках самого прокси. Для проверки региональных страниц через домашние IP возьмите резидентские прокси в ProxyWing с промокодом на пожизненную скидку. Скопируйте выданные параметры в команду из следующего раздела, сделайте запрос к сервису проверки IP и только потом открывайте нужную страницу.

HTTP, HTTPS и авторизация прокси

HTTP-прокси передаёт соединение к HTTPS-сайту через CONNECT. TLS до самого HTTPS-прокси представляет отдельный режим, который должны поддерживать сервер и сборка curl. Проверка сертификатов сайта и прокси относится к разным соединениям.

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

Выполните после ввода proxy_url из первого примера. Если передать только имя пользователя, curl запросит пароль интерактивно:

read -r -p "Логин прокси: " proxy_user
curl -q --proxy "$proxy_url" --proxy-user "$proxy_user" \
  --noproxy "" --connect-timeout 10 --max-time 30 \
  --head https://proxywing.com/ru/

Не добавляйте двоеточие после имени, если нужен запрос пароля. Для согласования HTTP-авторизации при необходимости добавьте –proxy-anyauth. Авторизация сайта задаётся отдельно.

Пример для PowerShell

$proxyUrl = Read-Host "URL HTTP-прокси с портом"
$proxyUser = Read-Host "Логин прокси"
curl.exe -q --proxy $proxyUrl --proxy-user $proxyUser --connect-timeout 10 --max-time 30 --head https://proxywing.com/ru/

Если задана переменная NO_PROXY, проверьте, не исключён ли адрес назначения из проксирования.

SOCKS5 и DNS

Режим Где определяется адрес сайта
SOCKS5 / –socks5 На стороне клиента
SOCKS5h / –socks5-hostname На стороне прокси
SOCKS4 Базовый режим с IPv4
SOCKS4a Передаёт доменное имя прокси

Для удалённого DNS в Bash введите хост и порт SOCKS5 без схемы:

read -r -p "SOCKS5, хост:порт: " socks_endpoint
curl -q --socks5-hostname "$socks_endpoint" --noproxy "" \
  --connect-timeout 10 --max-time 30 --head https://proxywing.com/ru/

Для сервера с логином добавьте –proxy-user и имя пользователя, как в примере авторизации. Для локального DNS замените –socks5-hostname на –socks5. SOCKS5 сам по себе не шифрует полезную нагрузку.

Окружение и файл конфигурации curl

Подробное руководство, как использовать curl с прокси

Переменные окружения

В Bash после ввода proxy_url:

export http_proxy="$proxy_url"
export https_proxy="$proxy_url"
curl -q --head https://proxywing.com/ru/

http_proxy задаёт прокси для HTTP-адресов, https_proxy для HTTPS. ALL_PROXY используется, если нет более конкретной переменной. NO_PROXY задаёт исключения. В системах с учётом регистра используйте http_proxy строчными буквами.

В PowerShell:

$env:https_proxy = $proxyUrl
curl.exe -q --head https://proxywing.com/ru/

Значения относятся к текущему процессу оболочки и его дочерним процессам.

Файл curlrc

Расположение стандартного конфига зависит от ОС и окружения. Для повторяемого запуска явно укажите свой файл:

curl --config proxy-curlrc --head https://proxywing.com/ru/

Создайте proxy-curlrc со своими значениями proxy и, если требуется, proxy-user. Ограничьте доступ, если файл содержит пароль. Параметр -q первым аргументом отключает автоматическое чтение стандартного конфига; окружение он не очищает.

Как отключить прокси или задать исключения

Для одного прямого запроса:

curl -q --noproxy "*" --connect-timeout 10 --max-time 30 --head https://proxywing.com/ru/

Звёздочку берите в кавычки, чтобы оболочка не подставила имена файлов. Для отдельных доменов передайте список через запятую:

curl -q --noproxy "localhost,proxywing.com" --head https://proxywing.com/ru/

Это управляет выбором прокси внутри curl. Внешний VPN или отдельный системный клиент может продолжать маршрутизировать соединение.

Диагностика подключения

Добавьте –verbose и найдите подключение к прокси, ответ CONNECT и ответ целевого сайта. Вывод может содержать чувствительные заголовки; уберите их перед передачей журнала.

Сообщение или код Что проверить
Could not resolve proxy Домен шлюза и локальный DNS
Failed to connect Адрес, порт, доступность и правила доступа
407 Реквизиты прокси и схему авторизации
Ошибка TLS или сертификата Время устройства, цепочку доверия и протокол
403 после успешного CONNECT Ответ сайта и права доступа
429 Частоту запросов и указания Retry-After

Успешный CONNECT подтверждает создание туннеля, но не результат следующего запроса. Для обработки HTTP-ошибок в скрипте используйте –fail-with-body, если параметр поддерживается вашей версией.

Какой прокси выбрать для curl

Для постоянного подключения выберите ISP-прокси ProxyWing. Для запросов из разных регионов используйте резидентский пул с ротацией или sticky-сессией.

Для связанных запросов сохраняйте параметры сессии и cookies. Критерии производительности и расхода трафика разобраны в статье о прокси для парсинга.

Проверка перед рабочим запуском

Проверьте версию curl, протокол, авторизацию, исключения и ответ целевого ресурса. Для SOCKS5 отдельно выберите локальный или удалённый DNS.

Для загрузки файлов с продолжением или обходом ссылок сравните возможности с настройкой Wget через прокси.

Статью написал:

Alexandre Parfonov

Фулстек AI-инженер

Александр привносит в инженерную команду Proxywing глубокую фулстек-экспертизу — от архитектуры бэкенда и оптимизации производительности до AI-ориентированных процессов разработки. Его практический опыт охватывает Node.js, React, облачную инфраструктуру и RAG-пайплайны, что позволяет одинаково уверенно работать как с внутренней логикой прокси-платформы, так и с пользовательской частью продукта. В Proxywing Александр сосредоточен на проектировании отказоустойчивых систем, устранении узких мест производительности и внедрении современных AI-инструментов в процесс разработки. Вне кода он увлечён исследованием передовых подходов в AI-инженерии и созданием сайд-проектов, расширяющих технические горизонты.

Все статьи автора (58)