Bloga geri dön

VS Code için Proxy: Kurumsal veya Yerel Proxy Üzerinden Uzantı ve Ayar Senkronizasyonu Ayarları

Visual Studio Code'da proxy ayarlarının nasıl yapılacağını anlatıyoruz, böylece uzantı senkronizasyonu ve Ayarlar Senkronizasyonu hata vermeden çalışır - kurumsal güvenlik duvarlarının arkasında veya engellenmiş bölgelerden bile.

📅21 Temmuz 2026
```html

Visual Studio Code, uzantıları, ayarları ve snippet'leri cihazlar arasında senkronize edebilir — ancak tüm bunlar, kurumsal güvenlik duvarı arkasında, katı filtreleme ile ofis ağlarında veya sınırlı erişime sahip bölgelerde sıkça erişilemeyen Microsoft sunucuları üzerinden çalışır. Sonuç olarak — Uzantılar Marketplace'i takılır, Ayar Senkronizasyonu bağlanamaz, güncellemeler indirilemez. Bu yazıda, VS Code'da proxy'yi doğru bir şekilde nasıl yapılandıracağımızı inceleyeceğiz, böylece bu sorunlar bir daha asla ortaya çıkmasın.

Neden bazı ağlarda VS Code proxy olmadan çalışmaz

Visual Studio Code, sadece bir metin editörü değildir. Arka planda sürekli olarak dış sunuculara erişir: uzantı güncellemelerini marketplace.visualstudio.com'dan indirir, ayarları vscode.dev ve GitHub/Microsoft Hesabı sunucuları üzerinden senkronize eder, editörün güncellemelerini kontrol eder ve telemetri gönderir (eğer kapatılmamışsa).

Tüm bu istekler standart HTTPS bağlantıları üzerinden yapılır. İşte burada sorunlar başlar:

  • Kurumsal ağlar — sistem yöneticileri doğrudan internete çıkışı engeller, tüm trafiğin kurumsal proxy sunucusu üzerinden geçmesini talep eder. VS Code bunun "farkında" değildir ve sadece bağlanamaz.
  • Beyaz listeye sahip ofis güvenlik duvarları — yalnızca belirli alan adlarına izin verilir ve marketplace.visualstudio.com bu listeye dahil değildir.
  • Bölgesel kısıtlamalar — bazı ülkelerde ve bölgelerde Microsoft hizmetlerine erişim sınırlıdır veya istikrarsızdır. Gerekli ülkenin IP'si ile proxy bu sorunu çözer.
  • VPN çatışmaları — bazı kurumsal VPN'ler trafiği yakalar, ancak doğru bir şekilde iletmez, bu nedenle VS Code Marketplace ile bağlantısını kaybeder.
  • İstikrarsız internet + önbellekli proxy — proxy sunucusu uzantı paketlerini önbelleğe alabilir ve yavaş bağlantıya sahip ekiplerde kurulumu hızlandırabilir.

Tüm bu sorunların belirtileri benzerdir: uzantılar yüklenmez veya yükleme sırasında takılır, Ayar Senkronizasyonu yetkilendirme hatası verir veya "bağlanılamıyor" der, VS Code güncellemeleri indirilemez ve Çıktı panelinde ECONNREFUSED veya ETIMEDOUT hataları görünür.

VS Code proxy'yi nasıl işler: bilmeniz gerekenler

VS Code, ağ istekleri için Chromium motorunu kullanan Electron üzerine inşa edilmiştir. Bu, proxy ayarlarının tarayıcı ayarlarıyla benzer şekilde çalıştığı anlamına gelir — editör HTTP, HTTPS ve SOCKS5 proxy'lerini destekler.

VS Code'un proxy ayarlarını aradığı hiyerarşiyi anlamak önemlidir:

  1. Sistem proxy ayarları — Windows/macOS/Linux'ta sistem proxy ayarı yapılandırılmışsa, VS Code bunu otomatik olarak alır (parametre http.systemProxy).
  2. Çevresel değişkenlerHTTP_PROXY, HTTPS_PROXY, NO_PROXY — Linux/macOS için standart yöntem.
  3. settings.json'daki ayarlarhttp.proxy ve ilgili seçenekler aracılığıyla proxy'yi açıkça belirtmek.
  4. Komut satırı argümanları — proxy bayrakları ile doğrudan VS Code'u başlatabilirsiniz.

Öncelik: settings.json içindeki açık ayarlar, çevresel değişkenleri geçersiz kılar, çevresel değişkenler de sistem ayarlarını geçersiz kılar. Eğer bir şey çalışmıyorsa — bu sırayla kontrol edin.

💡 Önemli bir nokta

VS Code, iki ayrı ağ yığını kullanır: biri editör için (Electron/Chromium), diğeri ise Node.js üzerinden kendi HTTP isteklerini yapabilen uzantılar içindir. settings.json içindeki proxy ayarı her iki yığını da kapsar, ancak bazı uzantılar sistem ayarlarını göz ardı eder ve ayrı bir yapılandırma gerektirir.

settings.json üzerinden proxy yapılandırması: adım adım

Bu, en güvenilir ve önerilen yöntemdir. settings.json içindeki ayarlar, VS Code'un tüm ağ isteklerine global olarak uygulanır.

Adım 1: settings.json'u açın

Ctrl+Shift+P (veya Mac'te Cmd+Shift+P) tuşlarına basın, “Open User Settings (JSON)” yazın ve bu seçeneği seçin. Kullanıcı ayarları dosyası açılacaktır.

Adım 2: Proxy parametrelerini ekleyin

Gerekli satırları JSON nesnesinin içine yapıştırın. Farklı proxy türleri için örnekler:

HTTP/HTTPS proxy (yetkilendirme olmadan):

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

HTTP/HTTPS proxy ile kullanıcı adı ve şifre:

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

SOCKS5 proxy:

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

Adım 3: Parametreleri anlayın

Parametre Değer Ne zaman kullanılmalı
http.proxy Proxy URL'si Ana parametre, zorunlu
http.proxyStrictSSL true / false false — proxy kendine imzalı sertifika kullanıyorsa
http.proxyAuthorization Base64 dizesi Kullanıcı adı/şifre iletmenin alternatif yolu
http.noProxy Alan adı listesi Proxy'yi atlaması gereken alan adları (localhost, dahili hostlar)
http.systemProxy on / off / override Sistem proxy'sini yönetme (VS Code 1.87+ için yeni parametre)

Adım 4: VS Code'u yeniden başlatın

settings.json dosyasını kaydettikten sonra, VS Code'u tamamen kapatıp tekrar açın. Kısmi yeniden yükleme (Pencereyi Yenile) bazen yeni ağ ayarlarını uygulamaz.

Çevresel değişkenler aracılığıyla proxy (HTTP_PROXY / HTTPS_PROXY)

Bu yöntem, Linux ve macOS'ta özellikle kullanışlıdır ve proxy'nin sistem düzeyinde yapılandırıldığı ve tüm geliştirme araçlarına uygulanması gerektiği durumlarda idealdir — sadece VS Code için değil, npm, pip, git vb. için de.

Linux / macOS — kalıcı yapılandırma

Aşağıdakileri ~/.bashrc, ~/.zshrc veya ~/.profile dosyasına ekleyin:

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"

Bundan sonra source ~/.bashrc (veya oturumu yeniden başlatın) komutunu çalıştırın ve terminalden VS Code'u code . komutuyla başlatın — değişkenler miras alınacaktır.

Windows — sistem değişkenleri aracılığıyla

"Sistem Ayarları" → "Gelişmiş Sistem Ayarları" → "Ortam Değişkenleri"ni açın. HTTP_PROXY ve HTTPS_PROXY değişkenlerini "Kullanıcı Değişkenleri" bölümüne (veya tüm kullanıcılar için "Sistem Değişkenleri"ne) ekleyin. Kaydettikten sonra VS Code'u yeniden başlatın.

VS Code'u doğrudan komut satırından proxy ile başlatma

Hızlı bir şekilde kontrol etmek istiyorsanız, sürekli bir yapılandırma olmadan:

# 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 .

Proxy üzerinden Ayar Senkronizasyonu: teşhis ve sorun çözme

Ayar Senkronizasyonu — ayarları, uzantıları, snippet'leri, kısayolları ve profilleri Microsoft veya GitHub hesabı aracılığıyla cihazlar arasında senkronize eden yerleşik bir VS Code özelliğidir. Microsoft ve GitHub sunucularına HTTPS istekleri aracılığıyla çalışır ve burada proxy kritik öneme sahiptir.

Proxy üzerinden Ayar Senkronizasyonu ile ilgili yaygın hatalar

Hata Sebep Çözüm
“Sunucuya bağlanılamıyor” Proxy yapılandırılmamış veya engellenmiş settings.json'da http.proxy'yi yapılandırın
“Kimlik doğrulama başarısız” Proxy OAuth token'ını yakalıyor *.microsoft.com için SSL denetimini devre dışı bırakın
“Senkronizasyon açık ama senkronize olmuyor” Kurumsal proxy WebSocket'i engelliyor WebSocket desteği olan bir proxy kullanın
Senkronizasyon “Senkronize ediliyor...”da takılıyor Yavaş proxy üzerinden bağlantı zaman aşımına uğruyor Daha hızlı bir proxy ile değiştirin

Çıktı üzerinden teşhis

Görünüm → Çıktı seçeneğini açın ve açılır listeden “Ayar Senkronizasyonu” seçin. Burada tüm bağlantı denemeleri ve hata kodları görünür. ECONNREFUSED, 407 Proxy Authentication Required veya CERT_UNTRUSTED içeren satırları arayın — bu kodların her biri proxy ile ilgili belirli bir sorunu gösterir.

Eğer 407 hatasını görüyorsanız — proxy kimlik doğrulama gerektiriyor, proxy URL'sine kullanıcı adı ve şifre ekleyin. Eğer CERT_UNTRUSTED hatası alıyorsanız — "http.proxyStrictSSL": false ayarını yapın veya kurumsal CA'nın kök sertifikasını ekleyin.

Ayar Senkronizasyonu için erişilebilir olması gereken alan adları

Proxy'niz üzerinden aşağıdaki hostların erişilebilir olduğundan emin olun:

  • login.microsoftonline.com — Microsoft Hesabı ile kimlik doğrulama
  • github.com — GitHub ile kimlik doğrulama
  • api.github.com — Gist üzerinden senkronizasyon için GitHub API'si
  • vscode.dev — VS Code senkronizasyon hizmeti
  • *.vscode-cdn.net — VS Code kaynakları için CDN

Uzantılar Marketplace: neden uzantılar yüklenmiyor ve nasıl düzeltilir

VS Code Marketplace, marketplace.visualstudio.com alanı ve Microsoft'un CDN sunucuları üzerinden çalışır. Eğer proxy doğru yapılandırılmışsa, uzantıların yüklenmesi şeffaf bir şekilde çalışır. Ancak birkaç özel sorun vardır.

Uzantı yükleniyor ama çalışmıyor

Birçok uzantı, başlatıldığında kendi ağ isteklerini yapar — örneğin, dil sunucularını (LSP), ikili bağımlılıkları veya veritabanı güncellemelerini indirir. Bu istekler, uzantının içindeki Node.js üzerinden yapılır ve VS Code'un proxy ayarlarına tabidir, ancak yalnızca uzantı HTTP_PROXY değişkenlerini dikkate alıyorsa.

Eğer uzantı hala proxy arkasında çalışmıyorsa — belgelerini kontrol edin. Birçok popüler uzantının kendi proxy ayarları vardır. Örneğin:

  • Python (Pylance/Pylint) — sistem çevresel değişkenlerini kullanır
  • ESLint, Prettier — yerel çalışır, proxyye ihtiyaç yoktur
  • GitHub Copilotapi.github.com'a erişim gerektirir, settings.json'dan proxy alır
  • Remote - SSH — SSH tüneli için proxy gereklidir, SSH yapılandırmasında ayrı olarak ayarlanır
  • Docker — sistem proxy'sini kullanır Docker daemon

Uzantıları manuel olarak yükleme (çevrimdışı)

Eğer proxy erişilemez veya istikrarsızsa, uzantıları .vsix dosyası aracılığıyla manuel olarak yükleyebilirsiniz. Proxy erişimi olan bir makineden marketplace.visualstudio.com'dan uzantı dosyasını indirin, ardından VS Code'da: Uzantılar → ··· → VSIX'ten Yükle.

VS Code için hangi proxy türünü seçmelisiniz

Proxy türünün seçimi, amaca bağlıdır. Geliştirme için temel seçenekleri inceleyelim.

Proxy Türü Hız Güvenilirlik VS Code için ne zaman uygundur
Veri merkezi proxy'leri ⚡ Yüksek ✅ Kararlı Kurumsal kısıtlamaların üstesinden gelmek, uzantıları indirmek, CI/CD boru hatları
Konut proxy'leri 🔄 Orta ✅ Yüksek güven Coğrafi olarak korunan kaynaklara erişim, belirli bir bölgeden test etme
Mobil proxy'ler 🔄 Orta ✅ Maksimum güven VS Code için nadiren gereklidir, ancak coğrafi test ile mobil uygulama geliştirme sırasında faydalıdır
Kurumsal proxy (Squid, ISA) ⚡ Yüksek ⚠️ Ayarlara bağlı Ofis ortamı, şirket politikası gereği zorunludur

Kurumsal kısıtlamaları aşmak veya Microsoft sunucularına istikrarsız erişim olan bir ülkeden çalışmak zorunda kalan çoğu geliştirici için en uygun seçim veri merkezi proxy'leridir — hızlı, kararlıdır ve paket indirme ve ayar senkronizasyonu gibi teknik görevler için iyi bir şekilde uygundur.

Eğer amacınız belirli bir coğrafi bölgeden uygulamanızı test etmekse (örneğin, hizmetinizin Almanya veya ABD'deki kullanıcılar için nasıl çalıştığını kontrol etmek), o zaman gerekli ülkenin gerçek IP'lerine sahip konut proxy'leri faydalı olacaktır.

SSL denetimi olan kurumsal proxy: özel durum

SSL denetimi (man-in-the-middle) olan kurumsal proxy'ler, geliştiriciler için ayrı bir baş ağrısıdır. Bu tür bir proxy, HTTPS trafiğini şifreler, kontrol eder ve tekrar şifreler, kendi kurumsal sertifikasıyla imzalar. Sonuç olarak, VS Code "bilinmeyen" bir sertifika görür ve çalışmayı reddeder.

Belirtiler

  • Çıktıda CERT_UNTRUSTED veya ilk sertifika doğrulanamıyor hatası
  • Proxy doğru belirtilmiş olmasına rağmen uzantılar yüklenmiyor
  • Ayar Senkronizasyonu yetkilendirme yapamıyor
  • npm ve pip de sertifikalarla ilgili hatalar veriyor

Çözüm 1: SSL denetimini devre dışı bırakın (hızlı, ancak daha az güvenli)

{
  "http.proxyStrictSSL": false
}

Bu, proxy'nin SSL sertifika denetimini devre dışı bırakan hızlı bir çözümdür. Güvenilir bir kurumsal ağda uygundur.

Çözüm 2: Kurumsal CA sertifikasını ekleyin (doğru yol)

Sistem yöneticinizden kurumsal kök sertifikasını (bir .pem veya .crt dosyası) alın ve ayarlara ekleyin:

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

Ayrıca sertifikayı işletim sisteminin sertifika deposuna ekleyin — VS Code, 1.40 sürümünden itibaren sistem sertifikalarını kullanır. Windows'ta, sertifikayı "Güvenilir Kök Sertifika Otoriteleri"ne certmgr.msc aracılığıyla yüklemek yeterlidir. Linux'ta, sertifikayı /usr/local/share/ca-certificates/ dizinine ekleyin ve update-ca-certificates komutunu çalıştırın.

Çözüm 3: NODE_EXTRA_CA_CERTS değişkeni

VS Code ve uzantıları Node.js üzerinde çalıştığı için, ek CA sertifikalarını çevresel değişken aracılığıyla belirtebilirsiniz:

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

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

Kontrol listesi: VS Code + proxy düzgün çalışıyor

Her şeyin doğru yapılandırıldığından emin olmak veya sorunun nedenini hızlıca bulmak için bu kontrol listesini kullanın.

✅ Temel proxy yapılandırması

  • settings.json dosyasında http.proxy parametresi doğru URL ile belirtilmiştir
  • Proxy URL'si şemayı içerir: http:// veya socks5://
  • Eğer proxy kimlik doğrulama gerektiriyorsa — kullanıcı adı ve şifre URL'de belirtilmiştir
  • VS Code ayar değişikliklerinden sonra tamamen yeniden başlatılmıştır

✅ SSL ve sertifikalar

  • Proxy SSL denetimi yapıyorsa — kurumsal CA sertifikası yüklenmiştir
  • Ya da geçici bir çözüm olarak "http.proxyStrictSSL": false ayarı yapılmıştır
  • Çıktıda CERT_UNTRUSTED hatası yoktur

✅ Ayar Senkronizasyonu

  • Proxy üzerinden login.microsoftonline.com ve vscode.dev alan adları erişilebilir olmalıdır
  • Microsoft Hesabı veya GitHub ile kimlik doğrulama başarılı bir şekilde geçmektedir
  • Çıktı → Ayar Senkronizasyonu bölümünde bağlantı hatası yoktur
  • Senkronizasyon durumu durum çubuğunda aktif simgeyi göstermektedir

✅ Marketplace ve uzantılar

  • Marketplace'de uzantı arama çalışıyor ve sonuçları gösteriyor
  • Uzantı yükleme işlemi hatasız tamamlanıyor
  • Ağ erişimi gerektiren uzantılar (Copilot, Remote) düzgün çalışıyor
  • Uzantı güncellemeleri otomatik olarak indiriliyor

✅ Ek geliştirici araçları

  • npm proxy üzerinden çalışacak şekilde yapılandırılmıştır: npm config set proxy http://proxy:3128
  • git yapılandırılmıştır: git config --global http.proxy http://proxy:3128
  • pip (eğer Python kullanılıyorsa): HTTP_PROXY değişkenleri ayarlanmıştır

Sonuç

VS Code'da proxy yapılandırmak, bir kez çözülmesi gereken bir görevdir ve Marketplace'in takılması, çalışmayan Ayar Senkronizasyonu ve bağımlılıkları indiremeyen uzantılar gibi sorunlardan kurtulmanızı sağlar. Bu yazıdan çıkarılacak ana noktalar:

  • En güvenilir yöntemhttp.proxy'yi settings.json dosyasına yazmak: hem editör hem de çoğu uzantı için çalışır.
  • Çevresel değişkenler (HTTP_PROXY, HTTPS_PROXY) — geliştirici ortamı için proxy ayarlarını birleştirmek için kullanışlıdır.
  • SSL denetimi olan kurumsal proxy, ya proxyStrictSSL'yi devre dışı bırakmayı ya da kurumsal CA sertifikasını yüklemeyi gerektirir.
  • Ayar Senkronizasyonu, ek ayarlar olmadan proxy üzerinden çalışır — önemli olan Microsoft ve GitHub alan adlarının erişilebilir olmasıdır.
  • Teşhis her zaman Çıktı → Ayar Senkronizasyonu ve Çıktı → Uzantılar ile başlar — burada tüm ağ hataları kodlarla görünür.

Eğer sınırlı internet erişimi olan bir ortamda çalışıyorsanız veya belirli bir coğrafi bölgeden uygulamanızı test etmeniz gerekiyorsa, veri merkezi proxy'lerini kullanmanızı öneririz — bu, geliştirme araçları ile hızlı ve istikrarlı bir çalışma sağlar; yüksek bağlantı hızı sunar ve paket indirme, ayar senkronizasyonu ve uzak depolarla çalışma gibi teknik görevler için mükemmel bir şekilde uygundur.

```