Как настроить подключение через прокси-сервер в Firefox
Mozilla Firefox предоставляет встроенную, детальную настройку прокси, которая позволяет направлять трафик браузера через промежуточный сервер — без установки каких-либо сторонних расширений. Независимо от того, нужно ли вам направить трафик через корпоративный шлюз, протестировать геоограниченный контент или изолировать сеансы просмотра от системного прокси, встроенная панель Параметры соединения Firefox даёт вам полный контроль над каждым протоколом прокси независимо.
Это руководство охватывает все режимы конфигурации, поддерживаемые Firefox, объясняет технические различия между протоколами прокси и указывает на реальные подводные камни, которые большинство руководств полностью упускают.
Почему стоит настраивать прокси непосредственно в Firefox, а не на уровне системы
Большинство операционных систем предоставляют глобальную настройку прокси, которую наследуют все приложения. Firefox может использовать эти настройки, но настройка прокси на уровне браузера даёт ряд преимуществ:
- Изоляция на уровне приложения: Системный прокси остаётся неизменным, пока Firefox направляет трафик через отдельный сервер — это удобно для разработчиков, запускающих локальные сервисы параллельно с проксированным браузером.
- Детализация на уровне протокола: Firefox позволяет назначать разные прокси-серверы для HTTP, HTTPS и SOCKS-трафика независимо друг от друга, чего не может сделать общесистемная настройка.
- Быстрое переключение без прав администратора: На корпоративных машинах с ограниченным доступом у вас может не быть разрешения на изменение сетевых настроек ОС, но вы всё равно можете изменить собственную конфигурацию Firefox.
- Поддержка PAC-файлов: Firefox может загружать скрипт автоматической настройки прокси (PAC) по URL, обеспечивая динамическую маршрутизацию на основе правил, которую системные прокси редко поддерживают на таком уровне гибкости.
Если вы используете среду VPS Хостинг и вам нужно проверить, как ваш сервер реагирует на запросы с разных географических узлов выхода, настройка прокси на уровне браузера — самый быстрый способ смоделировать это без изменения сетевого стека вашего сервера.
Понимание режимов настройки прокси в Firefox
Прежде чем менять какие-либо настройки, разберитесь, что именно делает каждый режим под капотом.
| Режим | Принцип работы | Лучший сценарий использования |
|---|---|---|
| — | — | — |
| Без прокси | Прямое соединение; Firefox игнорирует любой системный прокси | Локальная разработка, доверенные сети |
| Автоопределение (WPAD) | Отправляет DHCP/DNS-запрос для PAC-файла `wpad.dat` | Управляемые корпоративные сети с инфраструктурой WPAD |
| Использовать системные настройки прокси | Считывает конфигурацию прокси ОС (например, параметры интернета Windows, сетевые настройки macOS) | Согласованность с другими приложениями на том же компьютере |
| Ручная настройка прокси | Вы указываете адрес сервера и порт для каждого протокола | Личные прокси, SOCKS5-туннели, переадресация портов SSH |
| URL автоматической настройки прокси | Загружает и выполняет PAC-файл по указанному вами URL | Многорегиональные конфигурации, пулы прокси с балансировкой нагрузки |
Автоопределение WPAD несёт реальный риск безопасности: в ненадёжных сетях (публичный Wi-Fi, общие офисные LAN) вредоносный DHCP-сервер может подать поддельный файл wpad.dat и перенаправить весь ваш трафик. Если только вы не находитесь в сети, которую контролируете, избегайте этого режима.
Пошаговая инструкция: настройка прокси-сервера в Firefox
Шаг 1 — Откройте настройки Firefox
Запустите Firefox и откройте панель настроек одним из следующих способов:
- Нажмите на кнопку меню (три горизонтальные линии) в правом верхнем углу, затем выберите Настройки.
- Введите
about:preferencesнепосредственно в адресную строку и нажмите Enter. - В macOS пункт меню называется Настройки (Preferences), а не Settings — оба открывают одну и ту же панель.
Шаг 2 — Перейдите к сетевым настройкам
На странице настроек оставайтесь на вкладке Основные (она загружается по умолчанию). Прокрутите страницу до самого низа, пока не дойдёте до раздела Параметры сети. Нажмите кнопку Настроить…, чтобы открыть диалог параметров соединения.
Кроме того, воспользуйтесь строкой поиска в верхней части страницы настроек и введите proxy — Firefox немедленно выделит соответствующий раздел.
Шаг 3 — Выберите режим настройки прокси
Диалог Параметры соединения предлагает пять вариантов с переключателями. Выберите тот, который соответствует вашей инфраструктуре. Для большинства ручных настроек вы выберете Ручная настройка прокси — подробно рассматривается в следующем разделе.
Шаг 4 — Ручная настройка прокси в деталях
При выборе Ручная настройка прокси открываются отдельные поля для каждого протокола. Вот что контролирует каждое поле и что нужно знать о каждом из них:
HTTP-прокси
Введите IP-адрес или имя хоста вашего прокси-сервера и его порт (обычно 3128, 8080 или 8888). Этот прокси обрабатывает незашифрованный HTTP-трафик. Обратите внимание, что в современных версиях Firefox поле HTTP-прокси также перехватывает HTTPS-запросы по умолчанию через метод туннелирования CONNECT — это означает, что ваш HTTPS-трафик туннелируется через этот прокси, даже если поле SSL-прокси оставлено пустым.
SSL-прокси
Исторически использовался для выделенного HTTPS-прокси. В текущих версиях Firefox, если вы заполнили поле HTTP-прокси и оставили SSL-прокси пустым, HTTPS всё равно проксируется через CONNECT. Заполняйте это поле только в том случае, если ваша инфраструктура направляет SSL-трафик через отдельную конечную точку.
SOCKS-хост
Для SOCKS-прокси введите хост и порт здесь. Также необходимо выбрать версию SOCKS:
- SOCKS v4: Поддерживает только TCP, без аутентификации, без IPv6, без UDP. Проще, но ограничен.
- SOCKS v5: Поддерживает TCP и UDP, опциональную аутентификацию по имени пользователя и паролю, а также полную поддержку IPv6. Всегда предпочитайте SOCKS v5, если только ваш прокси явно не требует v4.
При выборе SOCKS v5 появляется важный дополнительный параметр: Использовать прокси DNS при использовании SOCKS v5. Включение этого флажка направляет DNS-запросы через SOCKS-прокси, а не разрешает их локально. Это необходимо для конфиденциальности и предотвращения утечек. Если оставить его неотмеченным, ваши DNS-запросы будут отправляться на локальный резолвер, даже если трафик идёт через прокси — это DNS-утечка, которая может раскрыть каждое посещаемое вами имя хоста вашему интернет-провайдеру или локальной сети.
Использовать этот прокси-сервер для всех протоколов
Установка этого флажка копирует то, что вы ввели в поле HTTP-прокси, во все остальные поля протоколов. Используйте его только тогда, когда ваш прокси-сервер действительно обрабатывает все протоколы по одному адресу и порту. Бездумное включение этой опции при наличии прокси только для SOCKS приведёт к сбоям.
Не использовать прокси для
Список имён хостов, IP-адресов и диапазонов CIDR, разделённых запятыми, которые полностью обходят прокси. Всегда включайте как минимум:
localhost, 127.0.0.1, ::1Для корпоративных сред добавьте суффикс вашего внутреннего домена (например, .corp.example.com) и любые подсети RFC 1918, к которым вашим приложениям необходимо обращаться напрямую. Если забыть об этом, локальные серверы разработки и внутренние инструменты будут направляться через прокси, что либо сломает их, либо приведёт к утечке внутренних имён хостов на внешний сервер.
Шаг 5 — URL автоматической настройки прокси (PAC-файл)
Если вы управляете пулом прокси или вам нужна маршрутизация на основе правил, выберите URL автоматической настройки прокси и введите URL вашего PAC-файла. PAC-файл — это JavaScript-файл, содержащий функцию FindProxyForURL(url, host). Firefox загружает и кэширует этот файл, затем вызывает функцию для каждого запроса, чтобы определить, какой прокси (или прямое соединение) использовать.
Пример минимального PAC-файла:
function FindProxyForURL(url, host) {
if (shExpMatch(host, "*.internal.example.com")) {
return "DIRECT";
}
if (isInNet(dnsResolve(host), "10.0.0.0", "255.0.0.0")) {
return "DIRECT";
}
return "SOCKS5 192.0.2.10:1080; DIRECT";
}Этот файл направляет внутренние хосты напрямую, обходит адреса RFC 1918 и использует SOCKS5-прокси для всего остального, с переключением на прямое соединение, если прокси недоступен.
Шаг 6 — Сохраните и проверьте конфигурацию
Нажмите OK, чтобы применить настройки. Firefox применяет настройки прокси немедленно к новым соединениям — полный перезапуск браузера не требуется, хотя перезапуск очищает все кэшированные прямые соединения.
Чтобы убедиться, что прокси активен, посетите сайт https://ifconfig.me или https://ipinfo.io. Отображаемый IP-адрес должен совпадать с IP-адресом выхода вашего прокси-сервера, а не с вашим локальным IP.
Если вы видите ошибку «Прокси-сервер отказывает в соединении», наиболее распространёнными причинами являются:
- Неверный номер порта
- Процесс прокси не запущен или привязан к другому интерфейсу
- Брандмауэр на прокси-сервере блокирует ваш исходный IP
- Прокси требует аутентификации, а Firefox ещё не запросил учётные данные
Если вы видите ошибку «Прокси-сервер не отвечает», адрес хоста недоступен — проверьте DNS-разрешение, маршрутизацию и работоспособность сервера.
Шаг 7 — Аутентификация прокси
Если ваш прокси-сервер требует учётных данных, Firefox отобразит диалог аутентификации при первой попытке соединения через этот прокси. Введите имя пользователя и пароль. Firefox кэширует эти учётные данные на время сеанса и, если вы разрешите, в менеджере паролей для будущих сеансов.
Для прокси, требующих аутентификации, но используемых в автоматизированных или безголовых контекстах, учётные данные можно встроить непосредственно в PAC-файл или управлять ими через настройки network.proxy.socks_username и network.proxy.socks_password в about:config — хотя хранение учётных данных в открытом виде в файлах конфигурации несёт очевидные риски безопасности.
Шаг 8 — Отключение прокси
Чтобы вернуться к прямому соединению, перейдите в Настройки > Параметры сети и выберите Без прокси, затем нажмите OK. Чтобы восстановить общесистемное поведение прокси, выберите вместо этого Использовать системные настройки прокси.
Расширенная настройка через about:config
В случаях, когда графического интерфейса недостаточно, Firefox предоставляет доступ ко всем параметрам прокси в виде настроек в about:config. Ключевые настройки включают:
| Ключ настройки | Тип | Описание |
|---|---|---|
| — | — | — |
| `network.proxy.type` | Integer | 0=Без прокси, 1=Ручной, 2=PAC URL, 4=Автоопределение, 5=Системный |
| `network.proxy.http` | String | Имя хоста HTTP-прокси |
| `network.proxy.http_port` | Integer | Порт HTTP-прокси |
| `network.proxy.socks` | String | Имя хоста SOCKS-прокси |
| `network.proxy.socks_port` | Integer | Порт SOCKS-прокси |
| `network.proxy.socks_version` | Integer | 4 или 5 |
| `network.proxy.socks_remote_dns` | Boolean | Включить DNS через SOCKS (предотвращает DNS-утечки) |
| `network.proxy.no_proxies_on` | String | Список исключений, разделённых запятыми |
| `network.proxy.autoconfig_url` | String | URL PAC-файла |
Эти настройки также можно заблокировать через mozilla.cfg или групповую политику в корпоративных развёртываниях, запрещая пользователям изменять настройки прокси.
Сравнение протоколов прокси: HTTP, HTTPS, SOCKS4 и SOCKS5
| Функция | HTTP-прокси | HTTPS-прокси (CONNECT) | SOCKS4 | SOCKS5 |
|---|---|---|---|---|
| — | — | — | — | — |
| Поддержка протоколов | Только HTTP | HTTP + туннелирование HTTPS | Только TCP | TCP + UDP |
| DNS-разрешение | Локальное | Локальное | Локальное | Удалённое (опционально) |
| Аутентификация | Basic/Digest | Basic/Digest | Отсутствует | Имя пользователя/пароль |
| Поддержка IPv6 | Зависит от сервера | Зависит от сервера | Нет | Да |
| Трафик не-HTTP | Нет | Нет | Нет | Да |
| Уровень анонимности | Низкий (заголовки открыты) | Средний | Средний | Высокий (с удалённым DNS) |
| Типичный сценарий использования | Корпоративная фильтрация | Общий HTTPS-браузинг | Устаревшие системы | SSH-туннели, конфиденциальность |
Для сценариев, ориентированных на конфиденциальность, SOCKS5 с включённым удалённым DNS — наиболее надёжный вариант в рамках встроенной конфигурации Firefox. Он обрабатывает весь TCP-трафик, разрешает DNS на стороне прокси и поддерживает аутентификацию — что делает его подходящим для маршрутизации через SSH-туннель (ssh -D 1080) или выделенный SOCKS5-сервер, работающий на Выделенном сервере.
Соображения безопасности и конфиденциальности
Риск перехвата трафика: Каждый байт вашего незашифрованного HTTP-трафика проходит через прокси-сервер в открытом виде. Даже для HTTPS прокси видит имя хоста назначения через запрос CONNECT. Используйте прокси только от провайдеров или инфраструктуры, которую вы контролируете или которой явно доверяете.
Перехват сертификатов: Некоторые корпоративные и «прозрачные» HTTPS-прокси выполняют SSL-инспекцию, действуя как посредник и предъявляя Firefox собственный сертификат. Firefox выдаст предупреждение, если только корневой CA прокси не установлен в вашем хранилище сертификатов. Если после включения прокси вы видите неожиданные предупреждения о сертификатах, скорее всего, причина именно в этом.
Утечки WebRTC: Реализация WebRTC в Firefox может обходить настройки прокси и раскрывать ваш реальный IP-адрес через STUN-запросы. Чтобы предотвратить это, установите media.peerconnection.enabled в значение false в about:config, если WebRTC не нужен, или используйте расширение браузера, управляющее поведением WebRTC.
Обход прокси через прямой DNS: Как отмечалось ранее, всегда включайте Использовать прокси DNS при использовании SOCKS v5, чтобы предотвратить DNS-утечки. Сочетание SOCKS5-прокси с правильно настроенным SSL-сертификатом на вашем исходном сервере обеспечивает сквозное шифрование даже при прохождении трафика через промежуточную инфраструктуру.
Раскрытие учётных данных: Аутентификация HTTP-прокси передаёт учётные данные в кодировке Base64, которая тривиально обратима. Если ваш прокси требует аутентификации, убедитесь, что соединение с самим прокси зашифровано (т.е. используйте HTTPS или SOCKS5-прокси через TLS, или SSH-туннель).
Настройка собственного прокси-сервера
Использование стороннего прокси-сервиса означает доверие этому провайдеру в отношении вашего трафика. Запуск собственного прокси на VPS даёт вам полный контроль. Минимальный SOCKS5-прокси с использованием dante на сервере Debian/Ubuntu:
apt update && apt install dante-server -yОтредактируйте /etc/danted.conf:
logoutput: syslog
internal: 0.0.0.0 port = 1080
external: eth0
clientmethod: none
socksmethod: username
user.privileged: root
user.notprivileged: nobody
client pass {
from: 0.0.0.0/0 to: 0.0.0.0/0
log: connect disconnect
}
socks pass {
from: 0.0.0.0/0 to: 0.0.0.0/0
socksmethod: username
log: connect disconnect
}systemctl enable danted --nowЗатем в поле SOCKS-хост Firefox введите IP вашего VPS и порт 1080, выберите SOCKS v5 и включите Использовать прокси DNS при использовании SOCKS v5. Эта конфигурация, работающая на VPS с cPanel или на базовом VPS, даёт вам приватный, аутентифицированный SOCKS5-прокси с полным контролем над журналированием.
Для команд, которым нужна общая прокси-инфраструктура, Виртуальный хостинг не подходит для запуска прокси-демонов — вам нужен VPS или выделенный сервер с root-доступом и возможностью открывать произвольные порты.
Ключевые выводы и матрица принятия решений
Используйте этот контрольный список перед окончательной настройкой прокси в Firefox:
- Выбирайте SOCKS v5 вместо SOCKS v4 всегда, когда прокси-сервер это поддерживает — поддержка UDP, IPv6 и удалённого DNS обязательна для современных сценариев использования.
- Включите «Использовать прокси DNS при использовании SOCKS v5», если конфиденциальность или предотвращение утечек является требованием.
- Заполните поле «Не использовать прокси для» значениями
localhost,127.0.0.1,::1и любыми внутренними подсетями или суффиксами доменов. - Проверьте IP-адрес выхода с помощью
ifconfig.meили аналогичного сервиса после применения настроек. - Отключите WebRTC через
about:config, если целью является анонимность. - Избегайте режима автоопределения WPAD в ненадёжных сетях.
- Убедитесь, что аутентификация прокси использует зашифрованный канал, если требуются учётные данные.
- Рассмотрите возможность запуска собственного прокси на контролируемом VPS, а не полагайтесь на сторонний сервис для конфиденциального трафика.
Если вам нужна динамическая маршрутизация на основе правил через несколько узлов выхода, потратьте время на написание PAC-файла — это гораздо удобнее в обслуживании, чем ручная перенастройка Firefox каждый раз при изменении топологии прокси.
Часто задаваемые вопросы
Влияет ли настройка прокси в Firefox на другие браузеры или системные приложения?
Нет. Firefox хранит настройки прокси независимо от операционной системы. Изменения, внесённые в параметры соединения Firefox, никак не влияют на Chrome, системный curl или любое другое приложение. Через настроенный прокси направляется только трафик, исходящий из Firefox.
Почему мой HTTPS-трафик всё равно идёт через прокси, хотя я оставил поле SSL-прокси пустым?
Это ожидаемое поведение в современных версиях Firefox. Когда настроен HTTP-прокси, Firefox использует метод HTTP CONNECT для туннелирования HTTPS-соединений через тот же прокси. Поле SSL-прокси актуально только в том случае, если вы хотите направить HTTPS-трафик через другую конечную точку прокси, отличную от HTTP.
Как предотвратить DNS-утечки при использовании SOCKS5-прокси в Firefox?
Откройте параметры соединения, выберите прокси SOCKS v5 и установите флажок Использовать прокси DNS при использовании SOCKS v5. Кроме того, установите network.proxy.socks_remote_dns в значение true в about:config. Это заставляет Firefox отправлять DNS-запросы через SOCKS-туннель, а не разрешать их локально.
Можно ли использовать настройки прокси Firefox с SSH-туннелем?
Да. Создайте локальный SOCKS5-туннель с помощью ssh -D 1080 -N user@your-server.com, затем настройте Firefox на использование 127.0.0.1 на порту 1080 в качестве SOCKS v5-прокси с включённым удалённым DNS. Весь трафик Firefox будет зашифрован через SSH-туннель на ваш удалённый сервер перед выходом в интернет.
В чём разница между «Автоматическим определением настроек прокси» и «URL автоматической настройки прокси»?
Автоопределение использует протокол WPAD для автоматического обнаружения PAC-файла через DHCP или DNS — вы не указываете никакого URL. URL автоматической настройки прокси требует явного указания URL PAC-файла. Последний вариант более предсказуем, более безопасен и рекомендуется всегда, когда вы заранее знаете расположение PAC-файла.
