「会社のプロキシ環境で拡張機能がインストールできない」 「ファイアウォールに阻まれて更新できない」 「リモート開発が繋がらない」 「SSL証明書エラーで何もダウンロードできない」
企業環境や制限のあるネットワークでVSCodeを使うのは、本当に大変ですよね。
でも大丈夫!この記事では、プロキシ設定からファイアウォール突破、SSL証明書問題まで、VSCodeのネットワーク関連の問題をすべて解決します。
これで、どんな環境でも快適にVSCodeが使えるようになります!
VSCodeのネットワーク通信を理解する

VSCodeが通信する主な項目
【VSCode本体の通信】
- 更新チェック(update.code.visualstudio.com)
- テレメトリ送信
- 設定の同期
- 拡張機能のダウンロード
【拡張機能の通信】
- Marketplace(marketplace.visualstudio.com)
- 各拡張機能独自の通信
- Language Server Protocol
- デバッガー通信
【開発関連の通信】
- Git(GitHub、GitLab等)
- npm/yarn(パッケージダウンロード)
- Docker
- リモート開発(SSH、WSL、Container)
これらすべてにネットワーク設定が影響します!
プロキシ設定:企業環境の第一関門
基本的なプロキシ設定
【settings.jsonで設定】
{
// HTTPプロキシ設定
"http.proxy": "http://proxy.company.com:8080",
// HTTPSも同じプロキシを使う
"https.proxy": "http://proxy.company.com:8080",
// プロキシを使わないホスト
"http.proxySupport": "on",
"http.proxyStrictSSL": true,
// 除外リスト
"http.noProxy": "localhost,127.0.0.1,*.internal.company.com"
}
認証が必要なプロキシ
【ユーザー名とパスワードを含める】
{
// 基本認証付きプロキシ
"http.proxy": "http://username:password@proxy.company.com:8080",
// パスワードに特殊文字がある場合はエンコード
"http.proxy": "http://user:p%40ssw0rd@proxy.company.com:8080"
}
【環境変数で設定(より安全)】
# Windows(システム環境変数)
HTTP_PROXY=http://proxy.company.com:8080
HTTPS_PROXY=http://proxy.company.com:8080
NO_PROXY=localhost,127.0.0.1
# Mac/Linux(.bashrcや.zshrcに追加)
export HTTP_PROXY=http://proxy.company.com:8080
export HTTPS_PROXY=$HTTP_PROXY
export NO_PROXY=localhost,127.0.0.1
プロキシ自動設定(PAC)ファイル
{
// PACファイルのURL
"http.proxyAuthorization": null,
"http.proxy": "http://proxy.company.com/proxy.pac",
// システムのプロキシ設定を使用
"http.proxySupport": "on"
}
SSL/TLS証明書の問題を解決
自己署名証明書エラーの対処
【一時的な回避策(非推奨)】
{
// SSL証明書の検証を無効化(危険!)
"http.proxyStrictSSL": false,
// より安全:特定の証明書だけ許可
"http.systemCertificates": false
}
企業の証明書を追加する方法
【Windows】
# 証明書をインストール
certutil -addstore -user Root company-ca.crt
# VSCodeを再起動
【Mac】
# キーチェーンに追加
sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain company-ca.crt
【Linux】
# Ubuntu/Debian
sudo cp company-ca.crt /usr/local/share/ca-certificates/
sudo update-ca-certificates
# CentOS/RHEL
sudo cp company-ca.crt /etc/pki/ca-trust/source/anchors/
sudo update-ca-trust
【VSCodeに証明書を指定】
{
// カスタム証明書ファイル
"http.certificateAuthorities": [
"/path/to/company-ca.crt"
]
}
拡張機能のインストール問題
Marketplaceに接続できない場合
【オフラインインストール】
- 別環境でVSIXファイルをダウンロード
- VSCode Marketplaceにアクセス
- 拡張機能のページで「Download Extension」
.vsix
ファイルを取得
- VSCodeでインストール
# コマンドラインから code --install-extension extension-name.vsix
または- Ctrl+Shift+P → 「Extensions: Install from VSIX」
- ファイルを選択
プライベートレジストリの設定
【社内の拡張機能リポジトリ】
{
// Marketplaceの URL を変更
"extensionsGallery": {
"serviceUrl": "https://internal-marketplace.company.com/_apis/public/gallery",
"cacheUrl": "https://internal-marketplace.company.com/gallery/index",
"itemUrl": "https://internal-marketplace.company.com/items"
}
}
拡張機能の自動更新設定
{
// 自動更新を無効化(帯域節約)
"extensions.autoUpdate": false,
// 起動時のチェックを無効化
"extensions.autoCheckUpdates": false,
// 特定の拡張機能だけ更新
"extensions.ignoreRecommendations": false
}
ファイアウォール設定
Windowsファイアウォール
【VSCodeを許可リストに追加】
# 管理者権限で実行
netsh advfirewall firewall add rule name="VSCode" dir=in action=allow program="C:\Program Files\Microsoft VS Code\Code.exe" enable=yes
# 送信も許可
netsh advfirewall firewall add rule name="VSCode" dir=out action=allow program="C:\Program Files\Microsoft VS Code\Code.exe" enable=yes
必要なポートとURL
【開放が必要なドメイン】
# VSCode本体
*.visualstudio.com
*.microsoft.com
*.azurewebsites.net
# GitHub(Git連携)
github.com
*.github.com
*.githubusercontent.com
# npm/Node.js
registry.npmjs.org
*.nodejs.org
# Docker
hub.docker.com
*.docker.io
【ポート番号】
HTTP: 80
HTTPS: 443
Git SSH: 22
Remote SSH: 22
Live Server: 5500
Debug: 9229
リモート開発の設定
SSH Remote接続
【.ssh/configの設定】
# プロキシ経由でSSH接続
Host remote-server
HostName remote.example.com
User username
Port 22
ProxyCommand connect -H proxy.company.com:8080 %h %p
【VSCodeの設定】
{
// SSH設定ファイルの場所
"remote.SSH.configFile": "~/.ssh/config",
// SSH接続のタイムアウト
"remote.SSH.connectTimeout": 30,
// プロキシ設定
"remote.SSH.useLocalServer": true
}
WSL設定
{
// WSL統合
"remote.WSL.enabled": true,
// WSL2のネットワーク設定
"remote.WSL.server.connectThroughLocalhost": true
}
Dockerコンテナ接続
{
// Docker設定
"docker.host": "tcp://localhost:2375",
// プロキシ環境変数を引き継ぐ
"remote.containers.env": {
"HTTP_PROXY": "http://proxy.company.com:8080",
"HTTPS_PROXY": "http://proxy.company.com:8080",
"NO_PROXY": "localhost,127.0.0.1"
}
}
Git/GitHubの設定
Gitのプロキシ設定
# HTTPSリポジトリ用
git config --global http.proxy http://proxy.company.com:8080
git config --global https.proxy http://proxy.company.com:8080
# 特定のドメインだけプロキシを使う
git config --global http.https://github.com.proxy http://proxy.company.com:8080
# プロキシ設定を削除
git config --global --unset http.proxy
git config --global --unset https.proxy
SSH経由でのGit接続
【~/.ssh/configの設定】
Host github.com
HostName github.com
User git
ProxyCommand connect -H proxy.company.com:8080 %h %p
IdentityFile ~/.ssh/id_rsa
npm/yarnの設定
npmプロキシ設定
# プロキシ設定
npm config set proxy http://proxy.company.com:8080
npm config set https-proxy http://proxy.company.com:8080
# SSL証明書の検証を無効化(非推奨)
npm config set strict-ssl false
# レジストリを変更(社内ミラー)
npm config set registry https://internal-npm.company.com/
# 設定確認
npm config list
yarnプロキシ設定
# プロキシ設定
yarn config set proxy http://proxy.company.com:8080
yarn config set https-proxy http://proxy.company.com:8080
# 証明書設定
yarn config set strict-ssl false
オフライン環境での使用
ポータブル版の準備
【完全オフライン環境の構築】
- VSCode Portable版をダウンロード
- 必要な拡張機能をVSIX形式で保存
- Node.jsやGitも含めてパッケージング
【portable-vscode構成】
portable-vscode/
├── code-portable.exe
├── data/
│ ├── extensions/ # 拡張機能
│ ├── user-data/ # ユーザー設定
│ └── tmp/ # 一時ファイル
├── tools/
│ ├── git/ # Git Portable
│ ├── node/ # Node.js
│ └── python/ # Python
└── workspace/ # プロジェクト
拡張機能の一括バックアップ
# インストール済み拡張機能のリスト取得
code --list-extensions > extensions.txt
# 一括インストールスクリプト
cat extensions.txt | xargs -L 1 code --install-extension
トラブルシューティング
接続テストツール
【VSCode内蔵のネットワーク診断】
{
// デバッグログを有効化
"log.level": "trace",
// ネットワークログ
"remote.downloadExtensionLocally": true
}
【curlでテスト】
# Marketplace接続テスト
curl -I https://marketplace.visualstudio.com/_apis/public/gallery
# プロキシ経由のテスト
curl -x http://proxy.company.com:8080 -I https://marketplace.visualstudio.com
よくある問題と解決法
Q:「XHR failed」エラー
{
// タイムアウトを延長
"http.timeout": 120000,
// リトライ設定
"http.retryCount": 3
}
Q:拡張機能の検索ができない
{
// DNSの問題を回避
"http.experimental.preferHttp2": false,
// IPv6を無効化
"http.ipVersion": 4
}
Q:同期が機能しない
{
// 同期サービスの設定
"settingsSync.keybindingsPerPlatform": false,
// プロキシ認証情報
"http.proxyAuthorization": "Basic base64encodedcredentials"
}
セキュリティベストプラクティス
安全な設定方法
{
// テレメトリを無効化(企業ポリシー)
"telemetry.telemetryLevel": "off",
// 自動更新を制御
"update.mode": "manual",
// 拡張機能の制限
"extensions.allowed": [
"ms-vscode.csharp",
"ms-python.python"
],
// ワークスペースの信頼設定
"security.workspace.trust.enabled": true
}
機密情報の管理
【パスワードを設定ファイルに書かない】
# 環境変数を使用
export PROXY_USER=username
export PROXY_PASS=password
# VSCodeから参照
"http.proxy": "http://${env:PROXY_USER}:${env:PROXY_PASS}@proxy.company.com:8080"
まとめ:どんなネットワーク環境でもVSCodeを使いこなす!
ネットワーク制限があっても、適切な設定でVSCodeは快適に使えます。
今すぐ確認すべき5つのこと:
✅ プロキシ設定を確認
{
"http.proxy": "http://proxy.company.com:8080",
"http.proxySupport": "on"
}
✅ SSL証明書の問題を解決
- 企業の証明書をインストール
- または一時的に検証を無効化
✅ 必要なURLをホワイトリスト登録
- *.visualstudio.com
- marketplace.visualstudio.com
✅ 拡張機能のオフラインインストール準備
- VSIXファイルのダウンロード方法を確認
✅ トラブル時の代替手段を用意
- ポータブル版の準備
- 設定のバックアップ
重要なポイント:
- セキュリティと利便性のバランスを取る
- パスワードは環境変数で管理
- 定期的に設定を見直す
- IT部門と連携して適切な設定を
これで、企業環境でも自宅でも、快適にVSCodeが使えるようになります!
Happy Coding in Any Network! 🌐
コメント