Назад к блогу

Прокси для VS Code: настройка синхронизации расширений и Settings Sync через корпоративный или резидентный прокси

Рассказываем, как настроить прокси в Visual Studio Code, чтобы синхронизация расширений и Settings Sync работали без ошибок — даже за корпоративным файрволом или из заблокированных регионов.

📅21 июля 2026 г.

Visual Studio Code умеет синхронизировать расширения, настройки и сниппеты между устройствами — но всё это работает через серверы Microsoft, которые нередко оказываются недоступны за корпоративным файрволом, в офисных сетях с жёсткой фильтрацией или из регионов с ограниченным доступом. Результат — Extensions Marketplace зависает, Settings Sync не подключается, обновления не скачиваются. В этой статье разберём, как правильно настроить прокси в VS Code, чтобы все эти проблемы исчезли раз и навсегда.

Почему VS Code не работает без прокси в некоторых сетях

Visual Studio Code — это не просто текстовый редактор. Под капотом он постоянно обращается к внешним серверам: скачивает обновления расширений с marketplace.visualstudio.com, синхронизирует настройки через vscode.dev и серверы GitHub/Microsoft Account, проверяет обновления самого редактора, отправляет телеметрию (если не отключена).

Все эти запросы идут через стандартные HTTPS-соединения. И вот где начинаются проблемы:

  • Корпоративные сети — системные администраторы блокируют прямой выход в интернет, требуя пропускать весь трафик через корпоративный прокси-сервер. VS Code об этом «не знает» и просто не может подключиться.
  • Офисные файрволы с белым списком — разрешены только конкретные домены, а marketplace.visualstudio.com в этот список не входит.
  • Региональные ограничения — в ряде стран и регионов доступ к сервисам Microsoft ограничен или нестабилен. Прокси с IP нужной страны решает проблему.
  • VPN-конфликты — некоторые корпоративные VPN перехватывают трафик, но не передают его правильно, из-за чего VS Code теряет соединение с Marketplace.
  • Нестабильный интернет + прокси с кешированием — прокси-сервер может кешировать пакеты расширений и ускорять установку в командах с медленным каналом.

Симптомы всех этих проблем похожи: расширения не устанавливаются или зависают на загрузке, Settings Sync выдаёт ошибку авторизации или «не удаётся подключиться», обновления VS Code не скачиваются, а в Output-панели видны ошибки ECONNREFUSED или ETIMEDOUT.

Как VS Code обрабатывает прокси: что важно знать

VS Code построен на Electron, который использует движок Chromium для сетевых запросов. Это означает, что прокси-настройки работают аналогично браузерным — редактор поддерживает HTTP, HTTPS и SOCKS5 прокси.

Важно понимать иерархию, по которой VS Code ищет настройки прокси:

  1. Системные настройки прокси — если в Windows/macOS/Linux настроен системный прокси, VS Code подхватит его автоматически (параметр http.systemProxy).
  2. Переменные окруженияHTTP_PROXY, HTTPS_PROXY, NO_PROXY — стандартный способ для Linux/macOS.
  3. Настройки в settings.json — явное указание прокси через параметры http.proxy и связанные опции.
  4. Аргументы командной строки — можно запустить VS Code с флагами прокси напрямую.

Приоритет: явные настройки в settings.json перекрывают переменные окружения, которые в свою очередь перекрывают системные настройки. Если что-то не работает — проверяйте в этом порядке.

💡 Важный нюанс

VS Code использует два отдельных сетевых стека: один для самого редактора (Electron/Chromium), другой — для расширений, которые могут делать собственные HTTP-запросы через Node.js. Настройка прокси в settings.json покрывает оба стека, но некоторые расширения игнорируют системные настройки и требуют отдельной конфигурации.

Настройка прокси через settings.json: пошагово

Это самый надёжный и рекомендуемый способ. Настройки в settings.json применяются глобально ко всем сетевым запросам VS Code.

Шаг 1: Откройте settings.json

Нажмите Ctrl+Shift+P (или Cmd+Shift+P на Mac), введите «Open User Settings (JSON)» и выберите этот пункт. Откроется файл пользовательских настроек.

Шаг 2: Добавьте параметры прокси

Вставьте нужные строки внутрь JSON-объекта. Примеры для разных типов прокси:

HTTP/HTTPS прокси (без авторизации):

{
  "http.proxy": "http://192.168.1.100:3128",
  "http.proxyStrictSSL": false
}

HTTP/HTTPS прокси с логином и паролем:

{
  "http.proxy": "http://username:password@proxy-host:3128",
  "http.proxyStrictSSL": false
}

SOCKS5 прокси:

{
  "http.proxy": "socks5://username:password@proxy-host:1080",
  "http.proxyStrictSSL": false
}

Шаг 3: Разберитесь с параметрами

Параметр Значение Когда использовать
http.proxy URL прокси Основной параметр, обязателен
http.proxyStrictSSL true / false false — если прокси использует самоподписанный сертификат
http.proxyAuthorization Base64-строка Альтернативный способ передачи логина/пароля
http.noProxy Список доменов Домены, которые должны обходить прокси (localhost, внутренние хосты)
http.systemProxy on / off / override Управление системным прокси (новый параметр в VS Code 1.87+)

Шаг 4: Перезапустите VS Code

После сохранения settings.json полностью закройте и снова откройте VS Code. Частичная перезагрузка (Reload Window) иногда не применяет новые сетевые настройки.

Прокси через переменные окружения (HTTP_PROXY / HTTPS_PROXY)

Этот способ особенно удобен на Linux и macOS, а также в командах, где прокси настраивается на уровне системы и должен применяться ко всем инструментам разработки — не только к VS Code, но и к npm, pip, git и т.д.

Linux / macOS — постоянная настройка

Добавьте в ~/.bashrc, ~/.zshrc или ~/.profile:

export HTTP_PROXY="http://username:password@proxy-host:3128"
export HTTPS_PROXY="http://username:password@proxy-host:3128"
export NO_PROXY="localhost,127.0.0.1,*.local,*.internal"

После этого выполните source ~/.bashrc (или перезайдите в сессию) и запустите VS Code из терминала командой code . — переменные будут унаследованы.

Windows — через системные переменные

Откройте «Параметры системы» → «Дополнительные параметры системы» → «Переменные среды». Добавьте переменные HTTP_PROXY и HTTPS_PROXY в раздел «Переменные пользователя» (или «Системные переменные» для применения ко всем пользователям). После сохранения перезапустите VS Code.

Запуск VS Code с прокси напрямую из командной строки

Если нужно быстро проверить без постоянной настройки:

# Linux/macOS
HTTP_PROXY=http://proxy-host:3128 HTTPS_PROXY=http://proxy-host:3128 code .

# Windows PowerShell
$env:HTTP_PROXY="http://proxy-host:3128"; $env:HTTPS_PROXY="http://proxy-host:3128"; code .

Settings Sync через прокси: диагностика и решение проблем

Settings Sync — встроенная функция VS Code, которая синхронизирует настройки, расширения, сниппеты, горячие клавиши и профили между устройствами через аккаунт Microsoft или GitHub. Она работает через HTTPS-запросы к серверам Microsoft и GitHub, и именно здесь прокси критически важен.

Типичные ошибки Settings Sync за прокси

Ошибка Причина Решение
«Cannot connect to the server» Прокси не настроен или заблокирован Настроить http.proxy в settings.json
«Authentication failed» Прокси перехватывает OAuth-токен Отключить SSL-инспекцию для *.microsoft.com
«Sync is turned on but not syncing» Корпоративный прокси блокирует WebSocket Использовать прокси с поддержкой WebSocket
Синхронизация зависает на «Syncing...» Таймаут соединения через медленный прокси Сменить прокси на более быстрый

Диагностика через Output

Откройте View → Output и в выпадающем списке выберите «Settings Sync». Здесь видны все попытки подключения и коды ошибок. Ищите строки с ECONNREFUSED, 407 Proxy Authentication Required или CERT_UNTRUSTED — каждый из этих кодов указывает на конкретную проблему с прокси.

Если видите ошибку 407 — прокси требует авторизацию, добавьте логин и пароль в URL прокси. Если CERT_UNTRUSTED — установите "http.proxyStrictSSL": false или добавьте корневой сертификат корпоративного CA.

Домены, которые должны быть доступны для Settings Sync

Убедитесь, что через ваш прокси доступны следующие хосты:

  • login.microsoftonline.com — авторизация через Microsoft Account
  • github.com — авторизация через GitHub
  • api.github.com — API GitHub для синхронизации через Gist
  • vscode.dev — сервис синхронизации VS Code
  • *.vscode-cdn.net — CDN для ресурсов VS Code

Extensions Marketplace: почему не устанавливаются расширения и как исправить

Marketplace VS Code работает через домен marketplace.visualstudio.com и CDN-серверы Microsoft. Если прокси настроен правильно, установка расширений работает прозрачно. Но есть несколько специфических проблем.

Расширение устанавливается, но не работает

Многие расширения делают собственные сетевые запросы при запуске — например, скачивают языковые серверы (LSP), бинарные зависимости или обновления баз данных. Эти запросы идут через Node.js внутри расширения, и они подчиняются настройкам прокси VS Code, но только если расширение написано с учётом переменных HTTP_PROXY.

Если расширение всё равно не работает за прокси — проверьте его документацию. Многие популярные расширения имеют собственные настройки прокси. Например:

  • Python (Pylance/Pylint) — использует системные переменные окружения
  • ESLint, Prettier — работают локально, прокси не нужен
  • GitHub Copilot — требует доступа к api.github.com, подхватывает прокси из settings.json
  • Remote - SSH — прокси нужен для SSH-туннеля, настраивается отдельно в SSH-конфиге
  • Docker — использует системный прокси Docker daemon

Установка расширений вручную (оффлайн)

Если прокси недоступен или нестабилен, расширения можно установить вручную через .vsix-файл. Скачайте файл расширения с marketplace.visualstudio.com на машине с доступом в интернет, затем в VS Code: Extensions → ··· → Install from VSIX.

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

Выбор типа прокси зависит от задачи. Рассмотрим основные варианты применительно к разработке.

Тип прокси Скорость Надёжность Когда подходит для VS Code
Прокси дата-центров ⚡ Высокая ✅ Стабильные Обход корпоративных ограничений, скачивание расширений, CI/CD пайплайны
Резидентные прокси 🔄 Средняя ✅ Высокое доверие Доступ к геозащищённым ресурсам, тестирование из конкретного региона
Мобильные прокси 🔄 Средняя ✅ Максимальное доверие Редко нужны для VS Code, но полезны при разработке мобильных приложений с геотестированием
Корпоративный прокси (Squid, ISA) ⚡ Высокая ⚠️ Зависит от настроек Офисная среда, обязателен по политике компании

Для большинства разработчиков, которым нужно просто обойти корпоративные ограничения или работать из страны с нестабильным доступом к серверам Microsoft, оптимальным выбором будут прокси дата-центров — они быстрые, стабильные и хорошо подходят для технических задач вроде скачивания пакетов и синхронизации настроек.

Если же задача — тестирование приложения из конкретного географического региона (например, проверить, как работает ваш сервис для пользователей в Германии или США), то здесь пригодятся резидентные прокси с реальными IP домашних пользователей нужной страны.

Корпоративный прокси с SSL-инспекцией: особый случай

Корпоративные прокси с функцией SSL-инспекции (man-in-the-middle) — это отдельная головная боль для разработчиков. Такой прокси расшифровывает HTTPS-трафик, проверяет его и снова шифрует, подписывая своим корпоративным сертификатом. В результате VS Code видит «неизвестный» сертификат и отказывается работать.

Симптомы

  • Ошибка CERT_UNTRUSTED или unable to verify the first certificate в Output
  • Расширения не устанавливаются, хотя прокси указан правильно
  • Settings Sync не авторизуется
  • npm и pip тоже ругаются на сертификаты

Решение 1: Отключить проверку SSL (быстро, но менее безопасно)

{
  "http.proxyStrictSSL": false
}

Это быстрое решение, которое отключает проверку SSL-сертификата прокси. Подходит для внутренней корпоративной сети, где прокси доверенный.

Решение 2: Добавить корпоративный CA-сертификат (правильный путь)

Получите у системного администратора корпоративный корневой сертификат (файл .pem или .crt) и добавьте его в настройки:

{
  "http.proxy": "http://corporate-proxy:3128",
  "http.proxyStrictSSL": true,
  "http.proxyCertificates": true
}

Также добавьте сертификат в системное хранилище ОС — VS Code использует системные сертификаты начиная с версии 1.40. На Windows достаточно установить сертификат в «Доверенные корневые центры сертификации» через certmgr.msc. На Linux добавьте сертификат в /usr/local/share/ca-certificates/ и выполните update-ca-certificates.

Решение 3: Переменная NODE_EXTRA_CA_CERTS

VS Code и его расширения работают на Node.js, поэтому можно указать дополнительные CA-сертификаты через переменную окружения:

# Linux/macOS
export NODE_EXTRA_CA_CERTS="/path/to/corporate-ca.pem"

# Windows PowerShell
$env:NODE_EXTRA_CA_CERTS="C:\certs\corporate-ca.pem"

Чек-лист: VS Code + прокси работает корректно

Используйте этот чек-лист, чтобы убедиться, что всё настроено правильно, или быстро найти причину проблемы.

✅ Базовая настройка прокси

  • В settings.json прописан параметр http.proxy с корректным URL
  • URL прокси включает схему: http:// или socks5://
  • Если прокси требует авторизацию — логин и пароль указаны в URL
  • VS Code полностью перезапущен после изменения настроек

✅ SSL и сертификаты

  • Если прокси с SSL-инспекцией — установлен корпоративный CA-сертификат
  • Или установлено "http.proxyStrictSSL": false как временное решение
  • В Output нет ошибок CERT_UNTRUSTED

✅ Settings Sync

  • Через прокси доступны домены login.microsoftonline.com и vscode.dev
  • Авторизация через Microsoft Account или GitHub проходит успешно
  • В Output → Settings Sync нет ошибок соединения
  • Статус синхронизации в строке состояния показывает активный значок

✅ Marketplace и расширения

  • Поиск расширений в Marketplace работает и отображает результаты
  • Установка расширения завершается без ошибок
  • Расширения, требующие сетевого доступа (Copilot, Remote), работают корректно
  • Обновления расширений скачиваются автоматически

✅ Дополнительные инструменты разработчика

  • npm настроен на работу через прокси: npm config set proxy http://proxy:3128
  • git настроен: git config --global http.proxy http://proxy:3128
  • pip (если используется Python): переменные HTTP_PROXY установлены

Заключение

Настройка прокси в VS Code — задача, которая решается один раз и навсегда избавляет от проблем с зависшим Marketplace, нерабочим Settings Sync и расширениями, которые не могут скачать зависимости. Ключевые выводы из этой статьи:

  • Самый надёжный способ — прописать http.proxy в settings.json: работает и для самого редактора, и для большинства расширений.
  • Переменные окружения (HTTP_PROXY, HTTPS_PROXY) — удобны для унификации настроек прокси для всего окружения разработчика.
  • Корпоративный прокси с SSL-инспекцией требует либо отключения proxyStrictSSL, либо установки корпоративного CA-сертификата.
  • Settings Sync работает через прокси без дополнительных настроек — главное, чтобы были доступны домены Microsoft и GitHub.
  • Диагностика всегда начинается с Output → Settings Sync и Output → Extensions — там видны все сетевые ошибки с кодами.

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