Если вы работаете на Linux и вам нужно направить трафик через прокси — для парсинга, мониторинга цен на маркетплейсах или работы с несколькими аккаунтами — стандартные инструкции из интернета часто не работают. Одни описывают только браузер, другие — только терминал, и нигде нет полной картины. В этом руководстве разберём все способы: от одной команды в терминале до системных настроек, которые покрывают весь трафик Ubuntu и Debian.
Какой тип прокси выбрать для Linux
Прежде чем переходить к настройке, важно понять: не все прокси одинаково подходят для разных задач. Linux-машины часто используют для автоматизированных задач — парсинга, мониторинга, массовых запросов — и выбор типа прокси здесь критичен.
| Тип прокси | Протоколы | Подходит для | Риск блокировки |
|---|---|---|---|
| Прокси дата-центров | HTTP, HTTPS, SOCKS5 | Парсинг, curl, скрипты | Средний |
| Резидентные прокси | HTTP, HTTPS, SOCKS5 | Маркетплейсы, соцсети, аккаунты | Низкий |
| Мобильные прокси | HTTP, SOCKS5 | Facebook, Instagram, TikTok | Минимальный |
Для большинства задач на Linux подойдут HTTP/HTTPS или SOCKS5 прокси. SOCKS5 предпочтительнее — он работает на уровне TCP и поддерживается большинством инструментов, включая curl, wget и proxychains. Далее во всех примерах будем использовать оба варианта.
Формат данных прокси
Для всех настроек ниже вам понадобятся данные в формате:
host:port или host:port:login:password
Эти данные вы получаете от провайдера прокси в личном кабинете.
Настройка через переменные окружения в терминале
Самый быстрый способ направить трафик через прокси в Linux — установить переменные окружения. Большинство консольных утилит (curl, wget, pip, apt и другие) автоматически читают эти переменные и используют указанный прокси без дополнительной настройки.
Временная настройка (только для текущей сессии)
Откройте терминал и выполните следующие команды. Замените значения на данные вашего прокси:
# Для HTTP-прокси без авторизации export http_proxy="http://192.168.1.1:3128" export https_proxy="http://192.168.1.1:3128" # Для HTTP-прокси с логином и паролем export http_proxy="http://login:[email protected]:3128" export https_proxy="http://login:[email protected]:3128" # Для SOCKS5-прокси export http_proxy="socks5://login:[email protected]:1080" export https_proxy="socks5://login:[email protected]:1080" # Исключения — адреса без прокси (localhost и локальная сеть) export no_proxy="localhost,127.0.0.1,::1,192.168.0.0/16"
После этих команд все утилиты в текущем терминале будут использовать прокси. Важный нюанс: некоторые программы читают переменные только в верхнем регистре. Чтобы перестраховаться, продублируйте команды с заглавными буквами:
export HTTP_PROXY="http://login:[email protected]:3128" export HTTPS_PROXY="http://login:[email protected]:3128" export NO_PROXY="localhost,127.0.0.1"
Постоянная настройка для вашего пользователя
Чтобы прокси применялся автоматически при каждом входе в терминал, добавьте переменные в файл ~/.bashrc (для bash) или ~/.zshrc (для zsh):
# Открываем файл в редакторе nano nano ~/.bashrc # Добавляем в конец файла следующие строки: export http_proxy="http://login:password@host:port" export https_proxy="http://login:password@host:port" export HTTP_PROXY="http://login:password@host:port" export HTTPS_PROXY="http://login:password@host:port" export no_proxy="localhost,127.0.0.1" # Сохраняем: Ctrl+O, Enter, Ctrl+X # Применяем изменения без перезапуска терминала: source ~/.bashrc
Системная настройка для всех пользователей
Если Linux используется как сервер или вы хотите применить прокси для всех пользователей системы, добавьте переменные в файл /etc/environment:
sudo nano /etc/environment # Добавьте строки (без команды export!): http_proxy="http://login:password@host:port" https_proxy="http://login:password@host:port" HTTP_PROXY="http://login:password@host:port" HTTPS_PROXY="http://login:password@host:port" no_proxy="localhost,127.0.0.1,::1"
После сохранения файла изменения вступят в силу при следующем входе в систему. Для применения без перезагрузки выполните source /etc/environment.
Системные настройки прокси через графический интерфейс (GNOME)
Если вы используете Ubuntu с рабочим столом GNOME (стандартная установка Ubuntu Desktop), настроить прокси можно через графический интерфейс без единой команды. Это удобно для тех, кто только начинает работать с Linux.
Пошаговая инструкция для Ubuntu GNOME
- Нажмите на иконку в правом верхнем углу экрана → выберите «Настройки» (Settings)
- В левом меню прокрутите вниз и выберите «Сеть» (Network)
- В разделе «Сетевой прокси» нажмите кнопку со стрелкой (значок настроек)
- Выберите режим прокси:
- Отключено — прокси не используется
- Вручную — вы вводите данные прокси сами (рекомендуется)
- Автоматически — используется PAC-файл от провайдера
- Выберите «Вручную» и заполните поля:
- HTTP Прокси: введите адрес хоста и порт
- HTTPS Прокси: те же данные
- SOCKS Хост: адрес и порт (если используете SOCKS5)
- Игнорировать хосты:
localhost, 127.0.0.0/8
- Закройте окно — настройки применяются автоматически
⚠️ Важно знать
Настройки прокси через GNOME применяются только к приложениям, которые читают системные настройки: браузер GNOME Web, некоторые приложения GNOME. Терминальные утилиты (curl, wget, apt) эти настройки не используют — для них нужны переменные окружения из предыдущего раздела. Firefox и Chromium имеют собственные настройки прокси.
Настройка через gsettings (терминал + GUI)
Если вы хотите управлять системными настройками прокси GNOME через терминал (например, для автоматизации), используйте команду gsettings:
# Включить ручной режим прокси gsettings set org.gnome.system.proxy mode 'manual' # Установить HTTP-прокси gsettings set org.gnome.system.proxy.http host 'host' gsettings set org.gnome.system.proxy.http port 3128 # Установить HTTPS-прокси gsettings set org.gnome.system.proxy.https host 'host' gsettings set org.gnome.system.proxy.https port 3128 # Установить SOCKS5-прокси gsettings set org.gnome.system.proxy.socks host 'host' gsettings set org.gnome.system.proxy.socks port 1080 # Отключить прокси gsettings set org.gnome.system.proxy mode 'none'
Прокси для APT — установка пакетов через прокси
Менеджер пакетов APT (используется в Ubuntu и Debian) имеет собственную систему настройки прокси, которая не зависит от переменных окружения. Это особенно актуально для серверов без прямого доступа в интернет или для корпоративных сетей.
Способ 1: Временный прокси для одной команды
# Использовать прокси для одной команды apt sudo apt-get -o Acquire::http::Proxy="http://login:password@host:port" update # Или через переменную окружения sudo http_proxy="http://login:password@host:port" apt-get update
Способ 2: Постоянный прокси для APT
Создайте файл конфигурации для APT. Этот способ рекомендуется для серверов, где прокси нужен постоянно:
# Создаём файл конфигурации sudo nano /etc/apt/apt.conf.d/95proxies # Добавляем содержимое: Acquire::http::Proxy "http://login:password@host:port"; Acquire::https::Proxy "http://login:password@host:port"; Acquire::ftp::Proxy "ftp://login:password@host:port"; # Сохраняем и проверяем: sudo apt-get update
Если прокси без авторизации, строки выглядят проще: Acquire::http::Proxy "http://host:port";. Чтобы отключить прокси для APT, просто удалите созданный файл командой sudo rm /etc/apt/apt.conf.d/95proxies.
Прокси для curl и wget
Curl и wget — основные инструменты для работы с HTTP-запросами в Linux. Их используют для парсинга, тестирования API, скачивания файлов. Оба инструмента поддерживают прокси напрямую через параметры командной строки.
Curl с прокси
# HTTP-прокси curl -x http://login:password@host:port https://example.com # SOCKS5-прокси curl --socks5 host:port --proxy-user login:password https://example.com # Проверка своего IP через прокси curl -x http://login:password@host:port https://api.ipify.org # Игнорировать SSL-ошибки (если нужно) curl -x http://login:password@host:port -k https://example.com
Чтобы не указывать прокси каждый раз, добавьте настройку в файл ~/.curlrc:
nano ~/.curlrc # Добавьте строку: proxy = "http://login:password@host:port" # Теперь curl всегда использует этот прокси: curl https://api.ipify.org
Wget с прокси
# Через параметр командной строки wget -e "http_proxy=http://login:password@host:port" https://example.com # Постоянная настройка в ~/.wgetrc nano ~/.wgetrc # Добавьте строки: http_proxy = http://login:password@host:port https_proxy = http://login:password@host:port use_proxy = on
Прокси для Firefox и Chromium на Linux
Браузеры на Linux имеют собственные настройки прокси, которые работают независимо от системных. Это удобно, если вы хотите использовать прокси только в браузере, не затрагивая остальной трафик.
Firefox: ручная настройка
- Откройте Firefox → нажмите на три полоски в правом верхнем углу → «Настройки»
- Прокрутите вниз до раздела «Прокси-сервер» → нажмите «Настройка»
- Выберите «Ручная настройка прокси»
- Заполните поля:
- HTTP-прокси: адрес хоста, порт
- Поставьте галочку «Использовать этот прокси-сервер для всех протоколов»
- Или отдельно укажите SOCKS: адрес, порт, выберите SOCKS v5
- Нажмите OK
Если прокси требует авторизацию, Firefox запросит логин и пароль при первом обращении и запомнит их. Для быстрого переключения между несколькими прокси установите расширение FoxyProxy — оно позволяет создавать профили и переключаться одним кликом.
Chromium / Google Chrome: запуск с прокси
Chromium на Linux не имеет встроенных настроек прокси в интерфейсе — он использует системные настройки. Но можно запустить браузер с конкретным прокси через параметр командной строки:
# Запуск Chromium с HTTP-прокси chromium-browser --proxy-server="http://host:port" # Запуск с SOCKS5-прокси chromium-browser --proxy-server="socks5://host:port" # Запуск с прокси и игнорированием localhost chromium-browser --proxy-server="http://host:port" \ --proxy-bypass-list="localhost;127.0.0.1" # Для Google Chrome замените chromium-browser на google-chrome google-chrome --proxy-server="socks5://host:port"
💡 Совет для мультиаккаунтинга
Если вы ведёте несколько аккаунтов через браузер на Linux, использование обычного браузера с прокси недостаточно — сайты отслеживают fingerprint браузера, cookies и другие параметры. Для полноценного мультиаккаунтинга используйте антидетект-браузеры: Dolphin Anty, AdsPower или GoLogin — они создают изолированные профили с отдельными прокси для каждого аккаунта.
Proxychains — прокси для любого приложения без поддержки
Некоторые приложения не поддерживают настройку прокси ни через переменные окружения, ни через собственные параметры. В этом случае на помощь приходит proxychains — инструмент, который перехватывает сетевые вызовы любой программы и направляет их через прокси. Это особенно полезно для парсеров, написанных на Python, или специализированных утилит.
Установка proxychains
# Ubuntu / Debian sudo apt-get update sudo apt-get install proxychains4 # Проверка установки proxychains4 --version
Настройка конфигурационного файла
# Открываем конфиг sudo nano /etc/proxychains4.conf # Находим строку "dynamic_chain" — раскомментируем её (убираем #): dynamic_chain # Комментируем "strict_chain" (добавляем # в начало): # strict_chain # В конце файла в разделе [ProxyList] добавляем наш прокси: # Формат: тип хост порт [логин] [пароль] # HTTP-прокси без авторизации: http 192.168.1.1 3128 # SOCKS5 с авторизацией: socks5 host 1080 login password
Использование proxychains
После настройки просто добавьте proxychains4 перед любой командой:
# Запустить curl через прокси proxychains4 curl https://api.ipify.org # Запустить Python-скрипт через прокси proxychains4 python3 parser.py # Запустить nmap через прокси proxychains4 nmap -sT target.com # Открыть Firefox через прокси proxychains4 firefox
Режим dynamic_chain означает, что если один прокси недоступен, proxychains попробует следующий из списка. Это удобно, если у вас несколько прокси — добавьте их все в [ProxyList] и получите автоматическую ротацию.
Как проверить, что прокси работает
После настройки обязательно проверьте, что трафик действительно идёт через прокси, а не напрямую. Вот несколько быстрых способов:
Проверка через curl
# Узнать текущий IP без прокси curl https://api.ipify.org # Результат: ваш реальный IP, например 85.12.34.56 # Узнать IP через прокси curl -x http://login:password@host:port https://api.ipify.org # Результат должен отличаться — это IP прокси-сервера # Расширенная информация об IP curl -x http://login:password@host:port https://ipinfo.io/json
Проверка переменных окружения
# Посмотреть установленные переменные прокси env | grep -i proxy # Ожидаемый результат: # http_proxy=http://login:password@host:port # https_proxy=http://login:password@host:port
Проверка доступности прокси-сервера
# Проверить, что порт прокси открыт и отвечает nc -zv host port # Например: nc -zv 192.168.1.1 3128 # Если nc не установлен: telnet host port
✅ Чек-лист проверки прокси
- IP в ответе curl отличается от вашего реального IP
- Страна и город в ipinfo.io соответствуют выбранному прокси
- Нет ошибок
Connection refusedили407 Proxy Authentication Required - Скорость соединения приемлемая (проверьте через curl с флагом
-w "%{time_total}")
Практические сценарии: парсинг, мониторинг, мультиаккаунтинг
Рассмотрим конкретные задачи, с которыми чаще всего сталкиваются пользователи, настраивающие прокси на Linux.
Сценарий 1: Парсинг Wildberries и Ozon с Linux-сервера
Селлеры маркетплейсов часто запускают парсеры цен на VPS с Ubuntu. Wildberries и Ozon активно блокируют запросы с серверных IP-адресов. Для обхода этой защиты нужны резидентные прокси — они выглядят как обычные домашние пользователи.
Рекомендуемая схема настройки для парсинга маркетплейсов:
- Установите переменные окружения с данными резидентных прокси в файл
~/.bashrc - Если используете Python-скрипт — убедитесь, что библиотека
requestsчитает переменные окружения (по умолчанию читает) - Для ротации IP настройте несколько прокси в proxychains с режимом
dynamic_chain - Добавьте задержки между запросами (1-3 секунды) — это снижает риск блокировки
- Проверяйте IP после каждых 50-100 запросов через
curl https://api.ipify.org
Сценарий 2: Мониторинг цен конкурентов на Авито
Авито блокирует запросы по нескольким критериям: частота запросов, тип User-Agent, IP-адрес. Для мониторинга объявлений с Linux-сервера используйте следующий подход:
# Пример запроса к Авито через прокси с правильными заголовками curl -x http://login:password@host:port \ -H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36" \ -H "Accept-Language: ru-RU,ru;q=0.9" \ -H "Accept: text/html,application/xhtml+xml" \ "https://www.avito.ru/moskva/nedvizhimost"
Для Авито особенно важно использовать прокси с российскими IP-адресами. Резидентные прокси с геолокацией в нужном городе позволяют видеть объявления, привязанные к конкретному региону.
Сценарий 3: Работа с Facebook Ads и Instagram через Linux
Арбитражники, которые работают на Linux (часто через VPS), используют антидетект-браузеры для управления рекламными аккаунтами. Схема работы:
- Устанавливаете Dolphin Anty или AdsPower на Linux (оба имеют Linux-версии)
- Создаёте отдельный профиль браузера для каждого аккаунта Facebook Ads
- В настройках каждого профиля указываете отдельный прокси
- Для Facebook и Instagram рекомендуются мобильные прокси — они имеют реальные IP мобильных операторов и минимальный риск блокировок
- Системный прокси Linux при этом не нужен — антидетект-браузер управляет прокси на уровне каждого профиля
Сравнение методов настройки прокси на Linux
| Метод | Охват | Сложность | Лучше для |
|---|---|---|---|
| Переменные окружения | Большинство CLI-утилит | Низкая | Скрипты, curl, pip |
| GNOME GUI | GNOME-приложения | Низкая | Десктоп без терминала |
| APT конфиг | Только APT | Низкая | Серверы за NAT |
| Proxychains | Любое приложение | Средняя | Парсеры, сторонние утилиты |
| Настройки браузера | Только браузер | Низкая | Ручная работа в браузере |
Типичные ошибки при настройке прокси на Linux
- Только строчные переменные — некоторые программы читают только
HTTP_PROXY(заглавные), другие — толькоhttp_proxy. Устанавливайте оба варианта. - Забыли source — после изменения
.bashrcнужно выполнитьsource ~/.bashrc, иначе изменения не применятся. - Прокси не работает с sudo — при использовании sudo переменные окружения пользователя не передаются. Используйте
sudo -Eдля передачи переменных. - localhost идёт через прокси — всегда добавляйте в
no_proxyзначенияlocalhost,127.0.0.1. - Неправильный формат URL — для HTTP-прокси обязательно указывайте схему:
http://илиsocks5://.
Заключение
Настройка прокси на Linux Ubuntu и Debian — задача, которая решается несколькими способами в зависимости от вашей цели. Для большинства задач достаточно переменных окружения: они покрывают curl, wget, pip и большинство скриптов. Для полного охвата трафика любого приложения используйте proxychains. Для браузера — встроенные настройки или запуск с параметром --proxy-server. Для APT — отдельный конфигурационный файл.
Главный принцип: выбирайте метод под конкретную задачу. Не нужно настраивать системный прокси, если вам нужен прокси только для одного скрипта. И наоборот — если весь трафик сервера должен идти через прокси, настройте переменные в /etc/environment один раз и забудьте об этом.
Если вы используете Linux для парсинга маркетплейсов, мониторинга цен или автоматизированных запросов, обратите внимание на резидентные прокси — они имеют реальные IP домашних пользователей, которые практически не попадают под блокировки на Wildberries, Ozon и Авито. Для работы с рекламными кабинетами Facebook Ads и Instagram через антидетект-браузеры на Linux хорошо подойдут мобильные прокси — минимальный риск блокировок и максимальное доверие со стороны платформ.