NP NEONPROXYPROXY NETWORK
КупитьЦеныFAQПартнёркаБлог Прокси-чекерМой IPAPI TG-бот

wget через прокси в Linux

GNU wget — классический инструмент зеркалирования сайтов и загрузки файлов в Linux. В отличие от curl, wget не поддерживает SOCKS5 нативно — только HTTP/HTTPS-прокси. NEONPROXY на порту 8080 с форматом host:port:login:password подходит идеально. Разберём env-переменные, конфиг ~/.wgetrc и типичные сценарии.

Быстрый старт через переменные

export http_proxy="http://wg_user:wg_pass@185.22.34.89:8080" export https_proxy="$http_proxy" wget -qO- "https://api.ipify.org?format=json" # Одной строкой без export: http_proxy="http://wg_user:wg_pass@185.22.34.89:8080" \ wget -O page.html "https://example.com"

Убедитесь, что IP в ответе — прокси, а не сервер VPS. Проверка: /tools/checker/ и /tools/myip/.

SVYAZVPN — свобода без границ

Файл ~/.wgetrc

# ~/.wgetrc — права 600 (chmod 600 ~/.wgetrc) http_proxy = http://wg_user:wg_pass@185.22.34.89:8080 https_proxy = http://wg_user:wg_pass@185.22.34.89:8080 use_proxy = on wait = 1 random_wait = on

Не коммитьте .wgetrc в Git. В CI подставляйте proxy URL из секретов. Для нескольких прокси используйте обёрточный shell-скрипт с ротацией — идеи в статье про ротацию.

Массовая загрузка и зеркалирование

wget -m -p -k -P ./mirror \ --restrict-file-names=windows \ -e robots=off \ "https://target-site.com/docs/" wget -i urls.txt -x --directory-prefix=./data

При зеркалировании соблюдайте robots.txt и rate limits — даже хороший IP заблокируют при агрессивном -c и десятках параллельных соединений. Wget по умолчанию один поток; для параллелизма используйте aria2c с SOCKS5 или несколько инстансов с разными прокси из пула NEONPROXY.

Ограничения wget и SOCKS5

Для SOCKS5 нужен клиент-мост: proxychains wget URL или локальный privoxy, конвертирующий SOCKS в HTTP. На тарифе NEONPROXY проще использовать HTTPS-порт 8080 напрямую.

# /etc/proxychains.conf # socks5 185.22.34.89 1080 wg_user wg_pass proxychains4 wget -qO- "https://example.com"

Cron и systemd

В crontab задайте env в начале файла:

http_proxy=http://user:pass@185.22.34.89:8080 https_proxy=http://user:pass@185.22.34.89:8080 0 3 * * * wget -O /backup/data.json "https://api.example.com/export"

Логируйте код возврата wget ($?) и алертьте при ненулевом значении — прокси мог истечь. Альтернатива wget — cURL с большей гибкостью протоколов.

Resume и большие файлы

wget -c -x --proxy=on \ -e use_proxy=yes \ -e http_proxy=http://user:pass@185.22.34.89:8080 \ "https://cdn.example.com/big-archive.tar.gz"

Флаг -c докачивает файл после обрыва — убедитесь, что прокси не меняется между сессиями, иначе CDN может отдать другой chunk. Для sticky IP используйте один адрес NEONPROXY на весь download.

Docker и контейнеры

docker run -e http_proxy=http://user:pass@185.22.34.89:8080 \ -e https_proxy=http://user:pass@185.22.34.89:8080 \ alpine wget -qO- https://api.ipify.org

BuildKit при docker build может игнорировать env прокси — передавайте --build-arg явно. В Kubernetes используйте Secret с URL прокси и envFrom в Pod spec.

Логирование и отладка

Флаг -d включает debug-вывод — видно CONNECT к прокси и код ответа. При 403 от целевого сайта смените User-Agent: --user-agent="Mozilla/5.0 ...". Перед массовым mirror проверьте robots.txt и юридические ограничения площадки.

Мониторинг bandwidth на тарифе NEONPROXY — см. статью про трафик. Не качайте мультимедиа через scraper-прокси без необходимости.

Сравнение wget 1.x и GNU wget

BusyBox wget в минимальных образах поддерживает только базовый HTTP GET — proxy auth может отсутствовать. В production Docker используйте образ с полным GNU wget или curl. Проверка: wget --version должен показывать GNU Wget.

Параллельная загрузка: GNU wget не умеет multithread — для ускорения запускайте несколько процессов с разными URL и разными прокси из пула NEONPROXY, соблюдая rate limits целевого сайта.

Для nightly mirror больших док-сайтов комбинируйте wget с -w 2 --random-wait — имитация человека снижает 403. Логи храните с меткой использованного host:port, чтобы при бане IP быстро найти проблемный адрес в пуле и заменить его через API — интеграция API.

Итог: wget + http_proxy env — простой стек для cron-загрузок через NEONPROXY. Проверяйте канал в чекере и не используйте один IP для агрессивного mirror.

При необходимости SOCKS5 или REST API вместо batch-загрузок переходите на cURL — он гибче для POST и custom headers в пайплайнах.

Для архивов старше 30 дней настройте алерт при росте размера логов wget — строки с 407 и timeout сигнализируют о проблемах с auth или истечении аренды NEONPROXY.

Сочетайте wget с прокси-чекером в pre-flight скрипте cron: если чекер вернул ошибку, job не стартует и не засоряет логи повторными timeout.

← Все статьи блога

Готовы начать

Прокси для загрузок и парсинга

IPv4/IPv6 для cron и scraper — host:port:login:password с HTTPS и SOCKS5.

Перейти к заказу