Как легко настроить прокси в Linux
Операционная система Linux предлагает одни из самых гибких и глубоких возможностей для интеграции промежуточного сервера. Настройка прокси в Linux реализуема на нескольких уровнях: для всей системы, отдельного пользователя, конкретных приложений или даже конкретных команд в терминале, в отличие от Windows и macOS, где все ограничивается системной конфигурацией или требует стороннего ПО.
Это достигается за счет открытой архитектуры системы, широкого набора инструментов и поддержки переменных окружения, которые позволяют задавать прокси быстро, удобно и безопасно — без необходимости использовать дополнительный софт.
Настройка прокси в Linux осуществляется двумя основными способами:
-
через терминал — для автоматизации, скриптов и профессиональной работы;
-
через графический интерфейс — для повседневного использования браузеров и других приложений.
Маршрутизация трафика может быть полезной в самых разных сценариях: от повышения конфиденциальности в интернете до работы с API, автоматизированными скриптами, парсерами и тестированием контента из других регионов. Также смена IP-адреса необходима, когда требуется разделить трафик между разными приложениями или работать в рамках лимитов по количеству запросов с одного IP.
Настройки прокси в Linux через командную строку
Конфигурация промежуточного сервера через терминал необходима при работе с консольными утилитами, например, curl, wget, docker скрипты на Python, Node.js и т.д., а также для:
-
запуска только определенных команд через прокси, не затрагивая систему и другие приложения;
-
временных краткосрочных задач, например, проверки работоспособности самого IP-адреса;
-
автоматизации и запуска скриптов.
Параметры в данных случаях задаются через переменные окружения, такие как http_proxy и https_proxy.
Постоянная настройка
Инструкция, как выполняются настройки прокси HTTP, HTTPS и SOCKS на Linux.
-
Откройте файл ~/.bashrc с помощью команды:
nano ~/.bashrc
-
Пролистните файл вниз и в конце добавьте следующие строки, предварительно заполнив их своими данными:
export http_proxy="http://логин:пароль@ip:порт"
export https_proxy="http://логин:пароль@ip:порт"
export all_proxy="socks5://логин:пароль@ip:порт"
-
Примените параметры, использовав команду:
source ~/.bashrc
Файл с настройками запускается автоматически при каждом открытии терминала, соответственно прокси будет работать постоянно для всех терминальных сессий этого пользователя.
Временная настройка
Для этого нет необходимости редактировать системные файлы. Выполняются следующие действия:
-
Откройте терминал и введите команды с параметрами прокси:
export http_proxy="http://логин:пароль@ip:порт"
export https_proxy="http://логин:пароль@ip:порт"
export all_proxy="socks5://логин:пароль@ip:порт"
-
Выполните нужные команды. Например:
curl https://example.com
-
После выполнения команды — закройте терминал через интерфейс или с использованием клавиш Ctrl + D.
Все временные переменные будут сброшены, и при повторном запуске не будут применены.
Настройка прокси в Linux для отдельных приложений
Если необходимо маршрутизировать трафик только одного конкретного приложения, не затрагивая другие программы или системные настройки, это также возможно в командной строке, при запуске необходимой утилиты. Такой способ особенно удобен для краткосрочных задач или при необходимости протестировать работу через определенный IP-адрес.
Например, для утилиты curl это выглядит так:
curl --proxy http://логин:пароль@ip:порт https://example.com
В этой команде:
-
curl: сама программа (ее можно заменить на другую утилиту);
-
--proxy: ключ, указывающий на использование промежуточного узла;
-
http://логин:пароль@ip:порт: данные сервера, включая авторизацию;
-
https://example.com: адрес, к которому осуществляется запрос.
Чтобы использовать другой инструмент, например npm, pip, git или любую другую CLI-программу, рекомендуется проверить ее документацию: у многих из них есть собственные параметры прокси (например, npm config set proxy, pip install --proxy=...). В таком случае curl и соответствующий ключ заменяется на нужные для выбранной программы.
Настройки прокси сервера в Linux через графический интерфейс
Данный вариант конфигурации подходит в тех случаях, когда используются графические приложения (например, браузеры, мессенджеры), запускаемые через меню системы или ярлыки рабочего стола. Он не предполагает редактирования конфигурационных файлов, и более удобен для использования профилей: прокси для одной Wi-Fi сети, прямое подключение — для другой.
Принцип настройки прокси в Linux таким способом будет одинаковым для всех графических систем. Инструкция предоставлена на примере Ubuntu с оболочкой GNOME Shell:
-
Нажмите на кнопку пуска и выберите пункт «Настройки» из главного меню.

-
В параметрах сети, к которой вы подключены, выберите пункт «Прокси».

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

-
В полях, соответствующих используемому протоколу, введите IP-адрес и порт. Вверху нажмите «Сохранить».

-
При открытии браузера и некоторых приложений появится окно авторизации, куда нужно ввести логин и пароль.

-
При необходимости исключить проксификацию трафика для некоторых узлов, сделать это можно в специальном поле в окне настройки сервера до сохранения параметров.

Как проверить настройки прокси в Linux
В случае конфигурации через переменные окружения работоспособность промежуточного сервера можно проверить, открыв терминал и выполнив команду:
env | grep -i proxy
В выводе должны отображаться строки с новым IP-адресом и портом. Также можно выполнить тестовый запрос через curl, не указывая параметры вручную:
curl https://api.ipify.org
Если выводится IP-адрес, принадлежащий прокси, значит переменные окружения работают корректно.
Временно заданная настройка прокси в Linux проверяется таким же образом, однако стоит учитывать, что эти переменные исчезнут после закрытия терминала. Поэтому важно убедиться в их наличии в текущем окне, пока оно открыто.
Проверить параметры отдельных приложений (например, wget, apt, npm, git и др.) можно через соответствующие конфигурационные файлы. Например, для wget это ~/.wgetrc, для apt — файлы внутри /etc/apt/apt.conf.d/. Также можно запустить само приложение с запросом к внешнему ресурсу и убедиться, что оно использует прокси (например, через wget https://api.ipify.org), сравнив IP-адрес или поведение приложения с тем, как оно работало до этого.
При работе через графический интерфейс системы, работоспособность лучше всего проверять через браузер в специальном онлайн-чекере. Если отображается IP-адрес промежуточного сервера, значит графическая настройка работает.
Особенности и ограничения настройки прокси в Linux
-
Авторизация при настройке через графический интерфейс.
В графическом интерфейсе (GNOME, KDE и др.) нет возможности сразу указать логин и пароль. Если промежуточный сервер требует авторизацию, логин/пароль запрашиваются при первом подключении в приложении (например, при запуске браузера). Но некоторые системные службы или фоновые приложения не умеют их запрашивать — в таком случае соединение просто не устанавливается, и они перестают работать корректно.
Решение:
-
использовать расширения (FoxyProxy, Proxy Auto Auth), если необходимо проксифицировать только трафик браузера;
-
настроить авторизацию через терминал, где можно явно указать логин:пароль.
-
-
Не все приложения поддерживают SOCKS-протокол через переменные окружения.
Переменная all_proxy="socks5://..." работает не во всех CLI-утилитах.
Например:
-
curl — поддерживает SOCKS через --socks5;
-
wget, apt — не поддерживают SOCKS вообще (нужен HTTP-протокол).
Решение: для протокола SOCKS можно использовать утилиты proxychains или torsocks, которые перехватывают трафик приложений и направляют его через SOCKS.
-
-
GUI не влияет на терминал.
Даже если в графическом интерфейсе настроен прокси, утилиты в терминале (curl, wget, apt) его не используют, если не заданы переменные окружения.
Решение: всегда задавать http_proxy/https_proxy для CLI, если работа идет в терминале, даже в случае наличия прокси-настроек для текущего подключения.
Заключение
Настройка прокси в Linux имеет ряд нюансов: не все приложения поддерживают протокол SOCKS, графические интерфейсы не передают параметры в терминал, а авторизация может не сработать в некоторых службах. Поэтому перед внедрением рекомендуется протестировать работу прокси в нужных инструментах и, при необходимости, использовать утилиты вроде proxychains или специализированные расширения для браузера.
Независимо от способа конфигурации — будь то через терминал или графический интерфейс — особое внимание следует уделить выбору самого сервера. Надежная и стабильная работа возможна только при использовании приватных решений с авторизацией, которые обеспечивают индивидуальный IP-адрес, высокий уровень безопасности и минимальный риск блокировок. Поэтому мы рекомендуем персональные прокси IPv4 для работы в Linux.
FAQ
Почему GUI-прокси применяется везде, кроме терминала?
Графическая настройка действует на приложения, запускаемые в одном окружении (например, GNOME), но не влияет на процессы, стартующие из терминала. Для CLI-утилит (curl, wget, git и т.д.) требуются переменные окружения или конфигурации — GUI-настройки их не затрагивают.
Появляются ошибки 4xx или 5xx при подключении через прокси — что это может значить?
Такие HTTP‑ошибки чаще всего говорят о: неправильных авторизации или формате запроса (коды 4xx) либо проблемах на стороне промежуточного или целевого сервера — нагрузка, сбои, несоответствие протокола (коды 5xx).
Можно ли настроить бесплатный прокси на Linux?
Можно, но не рекомендуется: большинство бесплатных решений нестабильны, медленные, часто заблокированы на популярных сервисах и могут представлять угрозу безопасности, поскольку не контролируются пользователем.
С какими приложениями протокол SOCKS не работает?
SOCKS-прокси не поддерживаются напрямую такими утилитами, как apt, wget, а также рядом системных служб, включая обновления, синхронизацию времени, сетевые компоненты и фоновые процессы, которые либо используют только HTTP-протокол, либо вообще не обрабатывают переменные окружения и подключаются к сети напрямую, обходя настройки пользователя.